[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ED77932E-558E-4422-AA7C-2DEED4F2954C@fb.com>
Date: Mon, 24 Sep 2018 20:00:34 +0000
From: Song Liu <songliubraving@...com>
To: Eric Dumazet <edumazet@...gle.com>
CC: David Miller <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
"michael.chan@...adcom.com" <michael.chan@...adcom.com>,
Ariel Elior <ariel.elior@...ium.com>,
Eric Dumazet <eric.dumazet@...il.com>,
Tariq Toukan <tariqt@...lanox.com>,
Saeed Mahameed <saeedm@...lanox.com>,
Jeff Kirsher <jeffrey.t.kirsher@...el.com>,
"jakub.kicinski@...ronome.com" <jakub.kicinski@...ronome.com>,
Jay Vosburgh <j.vosburgh@...il.com>,
Veaceslav Falico <vfalico@...il.com>,
Andy Gospodarek <andy@...yhouse.net>
Subject: Re: [PATCH net 00/15] netpoll: avoid capture effects for NAPI drivers
> On Sep 24, 2018, at 12:41 PM, Eric Dumazet <edumazet@...gle.com> wrote:
>
> On Mon, Sep 24, 2018 at 12:31 PM Song Liu <songliubraving@...com> wrote:
>
>> This triggers dev_watchdog() on a simple netperf TCP_RR on bnxt (I haven't
>> tested other drivers yet).
>>
>> I guess this is because NAPI_STATE_SCHED is set when poll_one_napi() calls
>> napi->poll(). And then cleared by napi->poll().
>
> Which part of napi->poll() could possibly clear NAPI_STATE_SCHED when
> called by netpoll ?
>
> AFAIK, napi_complete_done() should exit early (before having a chance
> to clear NAPI_STATE_SCHED)
> because of :
>
> if (unlikely(n->state & (NAPIF_STATE_NPSVC | NAPIF_STATE_IN_BUSY_POLL)))
> return false;
>
> Thanks !
You are right on this condition. But this does trigger dev_watchdog() for
some reason.
Thanks,
Song
Powered by blists - more mailing lists