[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250402095157.4d7c53ee@kernel.org>
Date: Wed, 2 Apr 2025 09:51:57 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Taehee Yoo <ap420073@...il.com>
Cc: davem@...emloft.net, pabeni@...hat.com, edumazet@...gle.com,
andrew+netdev@...n.ch, horms@...nel.org, michael.chan@...adcom.com,
pavan.chebbi@...adcom.com, netdev@...r.kernel.org, romieu@...zoreil.com,
kuniyu@...zon.com
Subject: Re: [PATCH net] eth: bnxt: fix deadlock in the mgmt_ops
On Wed, 2 Apr 2025 13:31:23 +0000 Taehee Yoo wrote:
> When queue is being reset, callbacks of mgmt_ops are called by
> netdev_nl_bind_rx_doit().
> The netdev_nl_bind_rx_doit() first acquires netdev_lock() and then calls
> callbacks.
> So, mgmt_ops callbacks should not acquire netdev_lock() internaly.
>
> The bnxt_queue_{start | stop}() calls napi_{enable | disable}() but they
> internally acquire netdev_lock().
> So, deadlock occurs.
>
> To avoid deadlock, napi_{enable | disable}_locked() should be used
> instead.
>
> Fixes: 413f0271f396 ("net: protect NAPI enablement with netdev_lock()")
Too far back, v6.14 doesn't need this fix. I think the Fixes tags
should be:
Fixes: cae03e5bdd9e ("net: hold netdev instance lock during queue operations")
No need to repost, I'll change when applying. Unless I'm wrong.
Powered by blists - more mailing lists