On Tue, 18 Mar 2025 12:46:08 +0100 Lorenzo Bianconi wrote:
> @@ -1514,13 +1518,14 @@ static bool otx2_xdp_rcv_pkt_handler(struct otx2_nic
> *pfvf,
>
> hard_start = (unsigned char *)phys_to_virt(pa);
> xdp_prepare_buff(&xdp, hard_start, OTX2_HEAD_ROOM,
> - cqe->sg.seg_size, false);
> + cqe->sg.seg_size, true);
>
> act = bpf_prog_run_xdp(prog, &xdp);
>
> handle_xdp_verdict:
> switch (act) {
> case XDP_PASS:
> + *metasize = xdp.data - xdp.data_meta;
> break;
> case XDP_TX:
> qidx += pfvf->hw.tx_queues;
This one handles ABORT and invalid return codes as PASS not DROP.
That should probably be fixed separately?