]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ice: Don't use %pK through printk or tracepoints
authorThomas Weißschuh <thomas.weissschuh@linutronix.de>
Mon, 11 Aug 2025 09:43:18 +0000 (11:43 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 13 Nov 2025 20:37:00 +0000 (15:37 -0500)
[ Upstream commit 66ceb45b7d7e9673254116eefe5b6d3a44eba267 ]

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 locks 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@linutronix.de>
Acked-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Reviewed-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de>
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Link: https://patch.msgid.link/20250811-restricted-pointers-net-v5-1-2e2fdc7d3f2c@linutronix.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/intel/ice/ice_main.c
drivers/net/ethernet/intel/ice/ice_trace.h

index 77781277aa8e4c42841f8eb174eaf7154cba2596..92b95d92d59924e29b5dcbc4d810aed984775fdc 100644 (file)
@@ -9125,7 +9125,7 @@ static int ice_create_q_channels(struct ice_vsi *vsi)
                list_add_tail(&ch->list, &vsi->ch_list);
                vsi->tc_map_vsi[i] = ch->ch_vsi;
                dev_dbg(ice_pf_to_dev(pf),
-                       "successfully created channel: VSI %pK\n", ch->ch_vsi);
+                       "successfully created channel: VSI %p\n", ch->ch_vsi);
        }
        return 0;
 
index 07aab6e130cd553fa1fcaa2feac9d14f0433239a..4f35ef8d6b299b4acd6c85992c2c93b164a88372 100644 (file)
@@ -130,7 +130,7 @@ DECLARE_EVENT_CLASS(ice_tx_template,
                                   __entry->buf = buf;
                                   __assign_str(devname);),
 
-                   TP_printk("netdev: %s ring: %pK desc: %pK buf %pK", __get_str(devname),
+                   TP_printk("netdev: %s ring: %p desc: %p buf %p", __get_str(devname),
                              __entry->ring, __entry->desc, __entry->buf)
 );
 
@@ -158,7 +158,7 @@ DECLARE_EVENT_CLASS(ice_rx_template,
                                   __entry->desc = desc;
                                   __assign_str(devname);),
 
-                   TP_printk("netdev: %s ring: %pK desc: %pK", __get_str(devname),
+                   TP_printk("netdev: %s ring: %p desc: %p", __get_str(devname),
                              __entry->ring, __entry->desc)
 );
 DEFINE_EVENT(ice_rx_template, ice_clean_rx_irq,
@@ -182,7 +182,7 @@ DECLARE_EVENT_CLASS(ice_rx_indicate_template,
                                   __entry->skb = skb;
                                   __assign_str(devname);),
 
-                   TP_printk("netdev: %s ring: %pK desc: %pK skb %pK", __get_str(devname),
+                   TP_printk("netdev: %s ring: %p desc: %p skb %p", __get_str(devname),
                              __entry->ring, __entry->desc, __entry->skb)
 );
 
@@ -205,7 +205,7 @@ DECLARE_EVENT_CLASS(ice_xmit_template,
                                   __entry->skb = skb;
                                   __assign_str(devname);),
 
-                   TP_printk("netdev: %s skb: %pK ring: %pK", __get_str(devname),
+                   TP_printk("netdev: %s skb: %p ring: %p", __get_str(devname),
                              __entry->skb, __entry->ring)
 );
 
@@ -228,7 +228,7 @@ DECLARE_EVENT_CLASS(ice_tx_tstamp_template,
                    TP_fast_assign(__entry->skb = skb;
                                   __entry->idx = idx;),
 
-                   TP_printk("skb %pK idx %d",
+                   TP_printk("skb %p idx %d",
                              __entry->skb, __entry->idx)
 );
 #define DEFINE_TX_TSTAMP_OP_EVENT(name) \