On Thu, 20 Jul 2023 07:06:05 +0000 Wei Fang wrote: > > Are you taking budget into account? When NAPI is called with budget of 0 we > > are *not* in napi / softirq context. You can't be processing any XDP tx under > > such conditions (it may be a netpoll call from IRQ context). > > Actually, the fec driver never takes the budget into account for cleaning up tx BD > ring. The budget is only valid for rx. I know, that's what I'm complaining about. XDP can only run in normal NAPI context, i.e. when NAPI is called with budget != 0. That works out without any changes on Rx, if budget is zero drivers already don't process Rx. But similar change must be done on Tx when adding XDP support. You can still process all normal skb packets on Tx when budget is 0 (in fact you should), but you _can't_ process any XDP Tx frame.