Commit 923096b5 authored by Alexander Lobakin's avatar Alexander Lobakin Committed by Daniel Borkmann
Browse files

ice: Remove two impossible branches on XDP Tx cleaning



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: a24b4c6e ("ice: xsk: Do not convert to buff to frame for XDP_TX")
Suggested-by: default avatarMaciej Fijalkowski <maciej.fijalkowski@intel.com>
Signed-off-by: default avatarAlexander Lobakin <alexandr.lobakin@intel.com>
Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
Acked-by: default avatarMaciej Fijalkowski <maciej.fijalkowski@intel.com>
Link: https://lore.kernel.org/bpf/20230210170618.1973430-4-alexandr.lobakin@intel.com
parent 0bd939b6
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -116,9 +116,6 @@ 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);
		} else {
			dev_kfree_skb_any(tx_buf->skb);
+1 −4
Original line number Diff line number Diff line
@@ -275,9 +275,6 @@ 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);
		ntc++;
		if (ntc == cnt)