On Mon, 11 Apr 2022 17:46:06 +0200 Maciej Fijalkowski wrote: > > +1 > > cover letter refers to busy poll, but did that test enable prefer busy > > poll w/ the timeout configured right? It seems like similar goal can > > be achieved with just that. > > AF_XDP busy poll where app and driver runs on same core, without > configuring gro_flush_timeout and napi_defer_hard_irqs does not bring much > value, so all of the busy poll tests were done with: > > echo 2 | sudo tee /sys/class/net/ens4f1/napi_defer_hard_irqs > echo 200000 | sudo tee /sys/class/net/ens4f1/gro_flush_timeout > > That said, performance can still suffer and packets would not make it up > to user space even with timeout being configured in the case I'm trying to > improve. Does the system not break out of busy poll then? See if the NAPI hrtimer fires or not. It's a 2k queue IIRC, with timeout of 200us, so 10Mpps at least. What rate is l2fwd sustaining without these patches? You may have to either increase the timeout or increase the frequency of repoll from user space (with a smaller budget).