diff mbox series

[net-next,resend,v2] net_sched: use %px to print skb address in trace_qdisc_dequeue()

Message ID 20210715060021.43249-1-xiyou.wangcong@gmail.com
State New
Headers show
Series [net-next,resend,v2] net_sched: use %px to print skb address in trace_qdisc_dequeue() | expand

Commit Message

Cong Wang July 15, 2021, 6 a.m. UTC
From: Qitao Xu <qitao.xu@bytedance.com>

Print format of skbaddr is changed to %px from %p, because we want
to use skb address as a quick way to identify a packet.

Note, trace ring buffer is only accessible to privileged users,
it is safe to use a real kernel address here.

Reviewed-by: Cong Wang <cong.wang@bytedance.com>
Signed-off-by: Qitao Xu <qitao.xu@bytedance.com>
---
 include/trace/events/qdisc.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Yunsheng Lin July 15, 2021, 11:26 a.m. UTC | #1
On 2021/7/15 14:00, Cong Wang wrote:
> From: Qitao Xu <qitao.xu@bytedance.com>
> 
> Print format of skbaddr is changed to %px from %p, because we want
> to use skb address as a quick way to identify a packet.
> 
> Note, trace ring buffer is only accessible to privileged users,
> it is safe to use a real kernel address here.

Does it make more sense to use %pK?

see: https://lwn.net/Articles/420403/

> 
> Reviewed-by: Cong Wang <cong.wang@bytedance.com>
> Signed-off-by: Qitao Xu <qitao.xu@bytedance.com>
> ---
>  include/trace/events/qdisc.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/include/trace/events/qdisc.h b/include/trace/events/qdisc.h
> index 330d32d84485..58209557cb3a 100644
> --- a/include/trace/events/qdisc.h
> +++ b/include/trace/events/qdisc.h
> @@ -41,7 +41,7 @@ TRACE_EVENT(qdisc_dequeue,
>  		__entry->txq_state	= txq->state;
>  	),
>  
> -	TP_printk("dequeue ifindex=%d qdisc handle=0x%X parent=0x%X txq_state=0x%lX packets=%d skbaddr=%p",
> +	TP_printk("dequeue ifindex=%d qdisc handle=0x%X parent=0x%X txq_state=0x%lX packets=%d skbaddr=%px",
>  		  __entry->ifindex, __entry->handle, __entry->parent,
>  		  __entry->txq_state, __entry->packets, __entry->skbaddr )
>  );
>
Cong Wang July 15, 2021, 3:17 p.m. UTC | #2
On Thu, Jul 15, 2021 at 4:26 AM Yunsheng Lin <linyunsheng@huawei.com> wrote:
>
> On 2021/7/15 14:00, Cong Wang wrote:
> > From: Qitao Xu <qitao.xu@bytedance.com>
> >
> > Print format of skbaddr is changed to %px from %p, because we want
> > to use skb address as a quick way to identify a packet.
> >
> > Note, trace ring buffer is only accessible to privileged users,
> > it is safe to use a real kernel address here.
>
> Does it make more sense to use %pK?
>
> see: https://lwn.net/Articles/420403/

I think you have the answer:

+ * %pK cannot be used in IRQ context because it tests
+ * CAP_SYSLOG.

;) So, no.

Thanks.
diff mbox series

Patch

diff --git a/include/trace/events/qdisc.h b/include/trace/events/qdisc.h
index 330d32d84485..58209557cb3a 100644
--- a/include/trace/events/qdisc.h
+++ b/include/trace/events/qdisc.h
@@ -41,7 +41,7 @@  TRACE_EVENT(qdisc_dequeue,
 		__entry->txq_state	= txq->state;
 	),
 
-	TP_printk("dequeue ifindex=%d qdisc handle=0x%X parent=0x%X txq_state=0x%lX packets=%d skbaddr=%p",
+	TP_printk("dequeue ifindex=%d qdisc handle=0x%X parent=0x%X txq_state=0x%lX packets=%d skbaddr=%px",
 		  __entry->ifindex, __entry->handle, __entry->parent,
 		  __entry->txq_state, __entry->packets, __entry->skbaddr )
 );