From: Jason Xing Date: Mon, 23 Jun 2025 12:01:59 +0000 (+0800) Subject: net: xsk: dpaa2: avoid repeatedly updating the global consumer X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=da7aee71616397234023e4ebd5c848a3c945f877;p=thirdparty%2Fkernel%2Fstable.git net: xsk: dpaa2: avoid repeatedly updating the global consumer This patch avoids another update of the consumer at the end of dpaa2_xsk_tx(). In the zero copy xmit path, two versions (batched and non-batched) regarding how the consumer of tx ring changes are implemented in xsk_tx_peek_release_desc_batch() that eventually updates the local consumer to the global consumer in either of the following call trace: 1) batched mode: xsk_tx_peek_release_desc_batch() __xskq_cons_release() 2) non-batched mode: xsk_tx_peek_release_desc_batch() xsk_tx_peek_release_fallback() xsk_tx_release() As we can see, dpaa2_xsk_tx() doesn't need to call extra release function to handle the sync of consumer itself. Signed-off-by: Jason Xing Acked-by: Maciej Fijalkowski Link: https://patch.msgid.link/20250623120159.68374-1-kerneljasonxing@gmail.com Signed-off-by: Jakub Kicinski --- diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-xsk.c b/drivers/net/ethernet/freescale/dpaa2/dpaa2-xsk.c index a466c2379146..4b0ae7d9af92 100644 --- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-xsk.c +++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-xsk.c @@ -448,7 +448,5 @@ bool dpaa2_xsk_tx(struct dpaa2_eth_priv *priv, percpu_stats->tx_errors++; } - xsk_tx_release(ch->xsk_pool); - return total_enqueued == budget; }