> > + if (act == XDP_PASS)
> > + return true;
> > +
> > + /* Count number of packets not to be passed to stack */
> > + rxq->xdp_no_pass++;
> > +
> > + switch (act) {
> > + default:
> > + bpf_warn_invalid_xdp_action(act);
> XDP_TX is a valid action and in fact some drivers already support that.
> Given that this isn't the first instance of driver not supporting XDP_TX
> I think we need to clear define what means. Personally, I think that we
> shouldn't allow a program to load that returns XDP_TX but driver does
> not support it. I believe Jesper might be looking into capabilities
> support for XDP to handle that. For the purposes of this patch I'd suggest
> having an XDP_TX case and warn user that an unsupported action
> as opposed to invalid one was returned.
Patch #11 does add XDP_TX support.
Adding an explicit case with a warning to be removed in the next patch
sounds like a waste to me. But if you think 'future generations' would
benefit from it, sure.
> > + case XDP_ABORTED:
> > + case XDP_DROP: