2023-07-10 10:28:50

by Menglong Dong

[permalink] [raw]
Subject: [PATCH RESEND net-next] bnxt_en: use dev_consume_skb_any() in bnxt_tx_int

From: Menglong Dong <[email protected]>

Replace dev_kfree_skb_any() with dev_consume_skb_any() in bnxt_tx_int()
to clear the unnecessary noise of "kfree_skb" event.

Signed-off-by: Menglong Dong <[email protected]>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index e5b54e6025be..d84ded8db93d 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -685,7 +685,7 @@ static void bnxt_tx_int(struct bnxt *bp, struct bnxt_napi *bnapi, int nr_pkts)
next_tx_int:
cons = NEXT_TX(cons);

- dev_kfree_skb_any(skb);
+ dev_consume_skb_any(skb);
}

WRITE_ONCE(txr->tx_cons, cons);
--
2.40.1



2023-07-11 07:03:53

by Leon Romanovsky

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

On Mon, Jul 10, 2023 at 05:47:47PM +0800, [email protected] wrote:
> From: Menglong Dong <[email protected]>
>
> Replace dev_kfree_skb_any() with dev_consume_skb_any() in bnxt_tx_int()
> to clear the unnecessary noise of "kfree_skb" event.

Can you please be more specific in the commit message what "unnecessary
noise" you reduced?

>
> Signed-off-by: Menglong Dong <[email protected]>
> ---
> drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>

Thanks,
Reviewed-by: Leon Romanovsky <[email protected]>

2023-07-11 09:09:43

by Menglong Dong

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

On Tue, Jul 11, 2023 at 2:31 PM Leon Romanovsky <[email protected]> wrote:
>
> On Mon, Jul 10, 2023 at 05:47:47PM +0800, [email protected] wrote:
> > From: Menglong Dong <[email protected]>
> >
> > Replace dev_kfree_skb_any() with dev_consume_skb_any() in bnxt_tx_int()
> > to clear the unnecessary noise of "kfree_skb" event.
>
> Can you please be more specific in the commit message what "unnecessary
> noise" you reduced?

OK! How about the description like this:

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
noise on the tracepoint "skb:kfree_skb":

$ perf record -e skb:kfree_skb -a
$ perf script
swapper 0 [006] 5072.553459: skb:kfree_skb:
skbaddr=0xffff88810ec47700 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
swapper 0 [006] 5072.554796: skb:kfree_skb:
skbaddr=0xffff8881370348e0 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
swapper 0 [006] 5072.554806: skb:kfree_skb:
skbaddr=0xffff888137035ae0 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
swapper 0 [010] 5072.605012: skb:kfree_skb:
skbaddr=0xffff8881372926e0 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
swapper 0 [010] 5072.648249: skb:kfree_skb:
skbaddr=0xffff8881372916e0 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
swapper 0 [010] 5072.655732: skb:kfree_skb:
skbaddr=0xffff8881372928e0 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
swapper 0 [010] 5072.697115: skb:kfree_skb:
skbaddr=0xffff8881372916e0 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
swapper 0 [010] 5072.744718: skb:kfree_skb:
skbaddr=0xffff8881372928e0 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
swapper 0 [010] 5072.786947: skb:kfree_skb:
skbaddr=0xffff8881372916e0 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
swapper 0 [010] 5072.838535: skb:kfree_skb:
skbaddr=0xffff8881372928e0 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED
swapper 0 [003] 5072.853599: skb:kfree_skb:
skbaddr=0xffff888108380500 protocol=2048
location=dev_kfree_skb_any_reason+0x2e reason: NOT_SPECIFIED

Replace dev_kfree_skb_any() with dev_consume_skb_any() in bnxt_tx_int()
to reduce the noise.


Thanks!
Menglong Dong


>
> >
> > Signed-off-by: Menglong Dong <[email protected]>
> > ---
> > drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
>
> Thanks,
> Reviewed-by: Leon Romanovsky <[email protected]>

2023-07-12 03:47:03

by patchwork-bot+netdevbpf

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

Hello:

This patch was applied to netdev/net-next.git (main)
by Jakub Kicinski <[email protected]>:

On Mon, 10 Jul 2023 17:47:47 +0800 you wrote:
> From: Menglong Dong <[email protected]>
>
> Replace dev_kfree_skb_any() with dev_consume_skb_any() in bnxt_tx_int()
> to clear the unnecessary noise of "kfree_skb" event.
>
> Signed-off-by: Menglong Dong <[email protected]>
>
> [...]

Here is the summary with links:
- [RESEND,net-next] bnxt_en: use dev_consume_skb_any() in bnxt_tx_int
https://git.kernel.org/netdev/net-next/c/47b7acfb016b

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html