Subject: Re: [PATCH net-next v2] bnxt_en: use dev_consume_skb_any() in bnxt_tx_int

From: Leon Romanovsky <[email-masked]>
Date: Wed, 12 Jul 2023 08:48:19 +0300

On Tue, Jul 11, 2023 at 08:09:55PM -0700, Jakub Kicinski wrote:
> On Tue, 11 Jul 2023 19:07:43 +0800 [email-masked] wrote:
> > In bnxt_tx_int(), the skb in the tx ring buffer will be freed after the
> > transmission completes with dev_kfree_skb_any(), which will produce
> > the noise on the tracepoint "skb:kfree_skb":
> > 
> > $ perf script record -e skb:kfree_skb -a
> > $ perf script
> >   swapper     0 [014] 12814.337522: skb:kfree_skb: skbaddr=0xffff88818f145ce0 protocol=2048 location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
> >   swapper     0 [003] 12814.338318: skb:kfree_skb: skbaddr=0xffff888108380600 protocol=2048 location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
> >   swapper     0 [014] 12814.375258: skb:kfree_skb: skbaddr=0xffff88818f147ce0 protocol=2048 location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
> >   swapper     0 [014] 12814.451960: skb:kfree_skb: skbaddr=0xffff88818f145ce0 protocol=2048 location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
> >   swapper     0 [008] 12814.562166: skb:kfree_skb: skbaddr=0xffff888112664600 protocol=2048 location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
> >   swapper     0 [014] 12814.732517: skb:kfree_skb: skbaddr=0xffff88818f145ce0 protocol=2048 location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
> >   swapper     0 [014] 12814.800608: skb:kfree_skb: skbaddr=0xffff88810025d100 protocol=2048 location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
> >   swapper     0 [014] 12814.861501: skb:kfree_skb: skbaddr=0xffff888108295a00 protocol=2048 location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
> >   swapper     0 [014] 12815.377038: skb:kfree_skb: skbaddr=0xffff88818f147ce0 protocol=2048 location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
> >   swapper     0 [014] 12815.395530: skb:kfree_skb: skbaddr=0xffff88818f145ee0 protocol=2048 location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
> 
> I think this is way too verbose, people looking at networking code 
> are expected to understand kfree_skb vs consume_skb. 

There are many people who look in git log and don't understand networking
code at all. Verbose commit messages are intended for them.

Thanks