On 7/10/19 4:52 PM, Edward Cree wrote:
Hmm, I was caught out by the call to napi_poll() actually being a local
function pointer, not the static function of the same name. How did a
shadow like that ever get allowed?
But in that case I _really_ don't understand napi_busy_loop(); nothing
in it seems to ever flush GRO, so it's relying on either
(1) stuff getting flushed because the bucket runs out of space, or
(2) the next napi poll after busy_poll_stop() doing the flush.
What am I missing, and where exactly in napi_busy_loop() should the
gro_normal_list() call go?
Please look at busy_poll_stop()