]> www.infradead.org Git - users/hch/misc.git/commitdiff
net: octeontx2: Handle XDP_ABORTED and XDP invalid as XDP_DROP
authorLorenzo Bianconi <lorenzo@kernel.org>
Tue, 1 Apr 2025 09:02:12 +0000 (11:02 +0200)
committerJakub Kicinski <kuba@kernel.org>
Fri, 4 Apr 2025 14:23:39 +0000 (07:23 -0700)
In the current implementation octeontx2 manages XDP_ABORTED and XDP
invalid as XDP_PASS forwarding the skb to the networking stack.
Align the behaviour to other XDP drivers handling XDP_ABORTED and XDP
invalid as XDP_DROP.
Please note this patch has just compile tested.

Fixes: 06059a1a9a4a5 ("octeontx2-pf: Add XDP support to netdev PF")
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://patch.msgid.link/20250401-octeontx2-xdp-abort-fix-v1-1-f0587c35a0b9@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c

index af8cabe828d05c8832085d24d183312f24d00330..0a6bb346ba45be3a5d680a49cece5042cea68583 100644 (file)
@@ -1559,12 +1559,11 @@ handle_xdp_verdict:
                break;
        default:
                bpf_warn_invalid_xdp_action(pfvf->netdev, prog, act);
-               break;
+               fallthrough;
        case XDP_ABORTED:
-               if (xsk_buff)
-                       xsk_buff_free(xsk_buff);
-               trace_xdp_exception(pfvf->netdev, prog, act);
-               break;
+               if (act == XDP_ABORTED)
+                       trace_xdp_exception(pfvf->netdev, prog, act);
+               fallthrough;
        case XDP_DROP:
                cq->pool_ptrs++;
                if (xsk_buff) {