On 31/03/2018 3:05 PM, Jesper Dangaard Brouer wrote:

..

@@ -844,6 +851,15 @@ static inline int mlx5e_xdp_handle(struct mlx5e_rq *rq,
                if (unlikely(!mlx5e_xmit_xdp_frame(rq, di, &xdp)))
                        trace_xdp_exception(rq->netdev, prog, act);
                return true;
+       case XDP_REDIRECT:
+               /* When XDP enabled then page-refcnt==1 here */
+               err = xdp_do_redirect(rq->netdev, &xdp, prog);
+               if (!err) {
+                       rq->wqe.xdp_xmit = true; /* XDP xmit owns page */

boolean xdp_xmit does not exist anymore, it was removed recently by:
121e89275471 net/mlx5e: Refactor RQ XDP_TX indication

please replace with:
                        __set_bit(MLX5E_RQ_FLAG_XDP_XMIT, rq->flags);

+                       rq->xdpsq.db.redirect_flush = true;
+                       mlx5e_page_dma_unmap(rq, di);
+               }
+               return true;
        default:
                bpf_warn_invalid_xdp_action(act);
        case XDP_ABORTED:

Reply via email to