Re: [PATCH v4 0/4] virtio-net: disable delayed refill when pausing rx

patchwork-bot+netdevbpf
2025-04-23T01:49:50Z

Hello:

This series was applied to netdev/net.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Thu, 17 Apr 2025 14:28:02 +0700 you wrote:
> Hi everyone,
>
> This series tries to fix a deadlock in virtio-net when binding/unbinding
> XDP program, XDP socket or resizing the rx queue.
>
> When pausing rx (e.g. set up xdp, xsk pool, rx resize), we call
> napi_disable() on the receive queue's napi. In delayed refill_work, it
> also calls napi_disable() on the receive queue's napi. When
> napi_disable() is called on an already disabled napi, it will sleep in
> napi_disable_locked while still holding the netdev_lock. As a result,
> later napi_enable gets stuck too as it cannot acquire the netdev_lock.
> This leads to refill_work and the pause-then-resume tx are stuck
> altogether.
>
> [...]

Here is the summary with links:
- [v4,1/4] virtio-net: disable delayed refill when pausing rx
https://git.kernel.org/netdev/net/c/4bc12818b363
- [v4,2/4] selftests: net: move xdp_helper to net/lib
(no matching commit)
- [v4,3/4] selftests: net: add flag to force zerocopy mode in xdp_helper
(no matching commit)
- [v4,4/4] selftests: net: add a virtio_net deadlock selftest
(no matching commit)

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.