[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <436AA90E-83A6-45A0-80B6-9ED843EE254E@fb.com>
Date: Thu, 27 Sep 2018 03:49:01 +0000
From: Song Liu <songliubraving@...com>
To: David Miller <davem@...emloft.net>
CC: "michael.chan@...adcom.com" <michael.chan@...adcom.com>,
"edumazet@...gle.com" <edumazet@...gle.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [PATCH net v2] bnxt_en: Fix TX timeout during netpoll.
> On Sep 26, 2018, at 8:33 PM, David Miller <davem@...emloft.net> wrote:
>
> From: Michael Chan <michael.chan@...adcom.com>
> Date: Wed, 26 Sep 2018 00:41:04 -0400
>
>> The current netpoll implementation in the bnxt_en driver has problems
>> that may miss TX completion events. bnxt_poll_work() in effect is
>> only handling at most 1 TX packet before exiting. In addition,
>> there may be in flight TX completions that ->poll() may miss even
>> after we fix bnxt_poll_work() to handle all visible TX completions.
>> netpoll may not call ->poll() again and HW may not generate IRQ
>> because the driver does not ARM the IRQ when the budget (0 for netpoll)
>> is reached.
>>
>> We fix it by handling all TX completions and to always ARM the IRQ
>> when we exit ->poll() with 0 budget.
>>
>> Also, the logic to ACK the completion ring in case it is almost filled
>> with TX completions need to be adjusted to take care of the 0 budget
>> case, as discussed with Eric Dumazet <edumazet@...gle.com>
>>
>> Reported-by: Song Liu <songliubraving@...com>
>> Signed-off-by: Michael Chan <michael.chan@...adcom.com>
>
> Applied and queued up for -stable, thanks Michael.
Hi David,
We also need this patch from Eric:
https://marc.info/?l=linux-netdev&m=153780304905946
Thanks,
Song
Powered by blists - more mailing lists