ice: Remove two impossible branches on XDP Tx cleaning
authorAlexander Lobakin <alexandr.lobakin@intel.com>
Fri, 10 Feb 2023 17:06:15 +0000 (18:06 +0100)
committerDaniel Borkmann <daniel@iogearbox.net>
Mon, 13 Feb 2023 18:13:12 +0000 (19:13 +0100)
The tagged commit started sending %XDP_TX frames from XSk Rx ring
directly without converting it to an &xdp_frame. However, when XSk is
enabled on a queue pair, it has its separate Tx cleaning functions, so
neither ice_clean_xdp_irq() nor ice_unmap_and_free_tx_buf() ever happens
there.
Remove impossible branches in order to reduce the diffstat of the
upcoming change.

Fixes: a24b4c6e9aab ("ice: xsk: Do not convert to buff to frame for XDP_TX")
Suggested-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Signed-off-by: Alexander Lobakin <alexandr.lobakin@intel.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Link: https://lore.kernel.org/bpf/20230210170618.1973430-4-alexandr.lobakin@intel.com
drivers/net/ethernet/intel/ice/ice_txrx.c
drivers/net/ethernet/intel/ice/ice_txrx_lib.c

index 466113c..6b99adb 100644 (file)
@@ -116,10 +116,7 @@ ice_unmap_and_free_tx_buf(struct ice_tx_ring *ring, struct ice_tx_buf *tx_buf)
                if (tx_buf->tx_flags & ICE_TX_FLAGS_DUMMY_PKT) {
                        devm_kfree(ring->dev, tx_buf->raw_buf);
                } else if (ice_ring_is_xdp(ring)) {
-                       if (ring->xsk_pool)
-                               xsk_buff_free(tx_buf->xdp);
-                       else
-                               page_frag_free(tx_buf->raw_buf);
+                       page_frag_free(tx_buf->raw_buf);
                } else {
                        dev_kfree_skb_any(tx_buf->skb);
                }
index 784f2f9..6371acb 100644 (file)
@@ -275,10 +275,7 @@ static u32 ice_clean_xdp_irq(struct ice_tx_ring *xdp_ring)
                ready_frames -= frags + 1;
                xdp_tx++;
 
-               if (xdp_ring->xsk_pool)
-                       xsk_buff_free(tx_buf->xdp);
-               else
-                       ice_clean_xdp_tx_buf(xdp_ring, tx_buf);
+               ice_clean_xdp_tx_buf(xdp_ring, tx_buf);
                ntc++;
                if (ntc == cnt)
                        ntc = 0;