Skip to content

Commit

Permalink
virtio-net: Keep stop() to follow mirror sequence of open()
Browse files Browse the repository at this point in the history
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.

Fixes: 754b8a2 ("virtio_net: setup xdp_rxq_info")
Acked-by: Michael S. Tsirkin <[email protected]>
Reviewed-by: Jiri Pirko <[email protected]>
Signed-off-by: Parav Pandit <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
  • Loading branch information
paravmellanox authored and kuba-moo committed Feb 2, 2023
1 parent 329c9cd commit 63b1140
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/net/virtio_net.c
Original file line number Diff line number Diff line change
Expand Up @@ -2158,8 +2158,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);
}

Expand Down

0 comments on commit 63b1140

Please sign in to comment.