[Intel-wired-lan] [PATCH net] ixgbe: check return value of napi_complete_done()

Song Liu songliubraving at fb.com
Fri Sep 21 07:17:03 UTC 2018



> On Sep 20, 2018, at 4:49 PM, Eric Dumazet <eric.dumazet at gmail.com> wrote:
> 
> 
> 
> On 09/20/2018 04:43 PM, Song Liu wrote:
>> 
> 
>> I tried to totally skip ndo_poll_controller() here. It did avoid hitting
>> the issue. However, netpoll will drop (fail to send) more packets. 
>> 
> 
> Why is it failing ?
> 
> If you are under high memory pressure, then maybe if you absolutely want memory to send
> netpoll packets, you want to grab all NAPI contexts as a way to prevent other cpus 
> from feeding incoming packets to the host and add more memory pressure ;)
> 

I did the test with Eric's latest patch (and disable ndo_poll_controller 
in driver). The result didn't show significant increase in drop packets. 
I guess packet drops in my earlier test was caused by some other changes
I mixed there. 

So I think this patch does fix the issue. Thanks Eric!

For ixgbe, I think we need to check napi_complete_done() return value
anyway. Otherwise, the driver will enable IRQ in polling mode.  

Song


More information about the Intel-wired-lan mailing list