RE: [Intel-wired-lan] [PATCH net-next 3/7] wifi: ath12k: Don't use %pK through printk

From: Loktionov, Aleksandr
Date: Mon Apr 14 2025 - 12:16:50 EST




> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces@xxxxxxxxxx> On Behalf Of
> Thomas Weißschuh
> Sent: Monday, April 14, 2025 10:26 AM
> To: Jeff Johnson <jjohnson@xxxxxxxxxx>; Loic Poulain
> <loic.poulain@xxxxxxxxxx>; Brian Norris <briannorris@xxxxxxxxxxxx>;
> Francesco Dolcini <francesco@xxxxxxxxxx>; Nguyen, Anthony L
> <anthony.l.nguyen@xxxxxxxxx>; Kitszel, Przemyslaw
> <przemyslaw.kitszel@xxxxxxxxx>; Andrew Lunn <andrew+netdev@xxxxxxx>;
> David S. Miller <davem@xxxxxxxxxxxxx>; Dumazet, Eric
> <edumazet@xxxxxxxxxx>; Jakub Kicinski <kuba@xxxxxxxxxx>; Paolo Abeni
> <pabeni@xxxxxxxxxx>; Saeed Mahameed <saeedm@xxxxxxxxxx>; Leon
> Romanovsky <leon@xxxxxxxxxx>; Tariq Toukan <tariqt@xxxxxxxxxx>
> Cc: ath10k@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> ath11k@xxxxxxxxxxxxxxxxxxx; ath12k@xxxxxxxxxxxxxxxxxxx;
> wcn36xx@xxxxxxxxxxxxxxxxxxx; linux-wireless@xxxxxxxxxxxxxxx; intel-wired-
> lan@xxxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; linux-rdma@xxxxxxxxxxxxxxx;
> Thomas Weißschuh <thomas.weissschuh@xxxxxxxxxxxxx>
> Subject: [Intel-wired-lan] [PATCH net-next 3/7] wifi: ath12k: Don't use %pK
> through printk
>
> In the past %pK was preferable to %p as it would not leak raw pointer values
> into the kernel log.
> Since commit ad67b74d2469 ("printk: hash addresses printed with %p") the
> regular %p has been improved to avoid this issue.
> Furthermore, restricted pointers ("%pK") were never meant to be used
> through printk(). They can still unintentionally leak raw pointers or acquire
> sleeping looks in atomic contexts.
>
> Switch to the regular pointer formatting which is safer and easier to reason
> about.
> There are still a few users of %pK left, but these use it through seq_file, for
> which its usage is safe.
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@xxxxxxxxxxxxx>
Reviewed-by: Aleksandr Loktionov <aleksandr.loktionov@xxxxxxxxx>
> ---
> drivers/net/wireless/ath/ath12k/testmode.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath12k/testmode.c
> b/drivers/net/wireless/ath/ath12k/testmode.c
> index
> 18d56a976dc74c4f6eab87e358c14d4faea648e2..fb6af7ccf71f44ae4bd01cd
> e53fba3527eed0d2d 100644
> --- a/drivers/net/wireless/ath/ath12k/testmode.c
> +++ b/drivers/net/wireless/ath/ath12k/testmode.c
> @@ -97,7 +97,7 @@ void ath12k_tm_process_event(struct ath12k_base
> *ab, u32 cmd_id,
> u8 const *buf_pos;
>
> ath12k_dbg(ab, ATH12K_DBG_TESTMODE,
> - "testmode event wmi cmd_id %d ftm event msg %pK
> datalen %d\n",
> + "testmode event wmi cmd_id %d ftm event msg %p datalen
> %d\n",
> cmd_id, ftm_msg, length);
> ath12k_dbg_dump(ab, ATH12K_DBG_TESTMODE, NULL, "", ftm_msg,
> length);
> pdev_id = DP_HW2SW_MACID(le32_to_cpu(ftm_msg-
> >seg_hdr.pdev_id));
> @@ -227,7 +227,7 @@ static int ath12k_tm_cmd_process_ftm(struct ath12k
> *ar, struct nlattr *tb[])
> buf_len = nla_len(tb[ATH_TM_ATTR_DATA]);
> cmd_id = WMI_PDEV_UTF_CMDID;
> ath12k_dbg(ar->ab, ATH12K_DBG_TESTMODE,
> - "testmode cmd wmi cmd_id %d buf %pK buf_len %d\n",
> + "testmode cmd wmi cmd_id %d buf %p buf_len %d\n",
> cmd_id, buf, buf_len);
> ath12k_dbg_dump(ar->ab, ATH12K_DBG_TESTMODE, NULL, "", buf,
> buf_len);
> bufpos = buf;
>
> --
> 2.49.0