virtio-net: Keep stop() to follow mirror sequence of open()
Subsystems (5)
PATCH 1/1 virtio-net: Keep stop() to follow mirror sequence of open()
Cited commit in fixes tag frees rxq xdp info while RQ NAPI is still enabled and packet processing may be ongoing.
Follow the mirror sequence of open() in the stop() callback. This ensures that when rxq info is unregistered, no rx packet processing is ongoing.
--- drivers/net/virtio_net.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/net/virtio_net.c +1 -1
@@ -2279,8 +2279,8 @@ static int virtnet_close(struct net_device *dev)cancel_delayed_work_sync (&vi->refill);for (i =0 ; i < vi->max_queue_pairs; i++) { -xdp_rxq_info_unreg (&vi->rq[i].xdp_rxq);napi_disable (&vi->rq[i].napi); +xdp_rxq_info_unreg (&vi->rq[i].xdp_rxq);virtnet_napi_tx_disable (&vi->sq[i].napi); }
Signature · 1 line
2.26.2
This patch was applied to netdev/net.git (master) by Jakub Kicinski <[email protected]>:
Hello:
This patch was applied to netdev/net.git (master)
by Jakub Kicinski <[email protected]>:
Quoted 8 lines · On Thu, 2 Feb 2023 18:35:16 +0200 you wrote:
Cited commit in fixes tag frees rxq xdp info while RQ NAPI is still enabled and packet processing may be ongoing.
Follow the mirror sequence of
open()in thestop()callback. This ensures that when rxq info is unregistered, no rx packet processing is ongoing.[...]
Here is the summary with links:
- [net] virtio-net: Keep stop() to follow mirror sequence of open()
https://git.kernel.org/netdev/net/c/63b114042d8a
You are awesome, thank you!
Signature · 2 lines
Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/patchwork/pwbot.html