[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240214163619.522486a5@kernel.org>
Date: Wed, 14 Feb 2024 16:36:19 -0800
From: Jakub Kicinski <kuba@...nel.org>
To: Alexander Lobakin <aleksander.lobakin@...el.com>
Cc: Alan Brady <alan.brady@...el.com>, <intel-wired-lan@...ts.osuosl.org>,
Przemek Kitszel <przemyslaw.kitszel@...el.com>, <netdev@...r.kernel.org>,
Emil Tantilov <emil.s.tantilov@...el.com>, Jesse Brandeburg
<jesse.brandeburg@...el.com>
Subject: Re: [Intel-wired-lan] [PATCH 1/1 iwl-net] idpf: disable local BH
when scheduling napi for marker packets
On Tue, 13 Feb 2024 14:16:47 +0100 Alexander Lobakin wrote:
> > Fix softirq's not being handled during napi_schedule() call when
> > receiving marker packets for queue disable by disabling local bottom
> > half.
>
> BTW, how exactly does this help?
>
> __napi_schedule() already disables interrupts (local_irq_save()).
> napi_schedule_prep() only has READ_ONCE() and other atomic read/write
> helpers.
>
> It's always been safe to call napi_schedule() with enabled BH, so I
> don't really understand how this works.
Sorry for late reply. IIRC the problem isn't a race but the fact that
local_irq_restore() does not have a hook for BH. IOW we may just set
the bit that the BH is pending but never call into softirq.c to run it.
Powered by blists - more mailing lists