net: xilinx: axienet: Fix Tx skb circular buffer occupancy check in dmaengine xmit
authorSuraj Gupta <suraj.gupta2@amd.com>
Wed, 21 May 2025 18:16:08 +0000 (23:46 +0530)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 27 May 2025 06:18:51 +0000 (08:18 +0200)
commit32374234ab0101881e7d0c6a8ef7ebce566c46c9
tree81a91510345ddee26f1d1172daf93ad7ddf60146
parentf0b50730bdd8f2734e548de541e845c0d40dceb6
net: xilinx: axienet: Fix Tx skb circular buffer occupancy check in dmaengine xmit

In Dmaengine flow, driver maintains struct skbuf_dma_descriptor rings each
element of which corresponds to a skb. In Tx datapath, compare available
space in skb ring with number of skbs instead of skb fragments.
Replace x * (MAX_SKB_FRAGS) in netif_txq_completed_wake() and
netif_txq_maybe_stop() with x * (1 skb) to fix the comparison.

Fixes: 6a91b846af85 ("net: axienet: Introduce dmaengine support")
Signed-off-by: Suraj Gupta <suraj.gupta2@amd.com>
Reviewed-by: Sean Anderson <sean.anderson@linux.dev>
Link: https://patch.msgid.link/20250521181608.669554-1-suraj.gupta2@amd.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/xilinx/xilinx_axienet_main.c