Re: [PATCH v3] wifi: ath9k: fix printk specifier

From: Dongliang Mu
Date: Tue Jul 18 2023 - 21:25:39 EST



On 2023/7/7 21:44, Toke Høiland-Jørgensen wrote:
Jonas Gorski <jonas.gorski@xxxxxxxxx> writes:

On Thu, 6 Jul 2023 at 13:39, Toke Høiland-Jørgensen <toke@xxxxxxx> wrote:
Dongliang Mu <dzm91@xxxxxxxxxxx> writes:

Smatch reports:

ath_pci_probe() warn: argument 4 to %lx specifier is cast from pointer
ath_ahb_probe() warn: argument 4 to %lx specifier is cast from pointer

Fix it by modifying %lx to %p in printk.

Signed-off-by: Dongliang Mu <dzm91@xxxxxxxxxxx>
Third time is the charm! :)

Acked-by: Toke Høiland-Jørgensen <toke@xxxxxxx>
But do we *want* to replace %lx with %p? Because this now causes a
change in behavior, as the kernel will omit the pointer's address,
while before it printed the actual memory address. Using %px would
have kept the original behavior.
So this is basically an informational log message, which really
shouldn't be leaking kernel pointer addresses. So I think %p is the
right choice here, and if someone wants to see the real address for
debugging they should be booting with no_hash_pointers.

So if the change is desired, it should be noted in the commit message.
That is a fair point, documenting this in the commit message would be
good...

Hi Toke,

What's the next? Patch v4 with a note at the end, like the following,

"Note that %p would by default print a hashed value without leaking the kernel pointer to user space."


-Toke