Patch "virtio-net: serialize tx routine during reset" has been added to the 4.11-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
virtio-net: serialize tx routine during reset
to the 4.11-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
virtio-net-serialize-tx-routine-during-reset.patch
and it can be found in the queue-4.11 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From foo@baz Mon Jul 17 18:47:09 CEST 2017
From: Jason Wang <[email protected]>
Date: Wed, 28 Jun 2017 09:51:03 +0800
Subject: virtio-net: serialize tx routine during reset
From: Jason Wang <[email protected]>
[ Upstream commit 713a98d90c5ea072c1bb00ef40617aee2cef2232 ]
We don't hold any tx lock when trying to disable TX during reset, this would lead a use after free since ndo_start_xmit() tries to access the virtqueue which has already been freed. Fix this by using netif_tx_disable() before freeing the vqs, this could make sure no tx after vq freeing.
Fixes commit f600b6905015 ("virtio_net: Add XDP support")
--- drivers/net/virtio_net.c | 1 + 1 file changed, 1 insertion(+)
drivers/net/virtio_net.c +1 -0
@@ -1709,6 +1709,7 @@ static void virtnet_freeze_down(struct vflush_work (&vi->config_work);netif_device_detach (vi->dev); +netif_tx_disable (vi->dev);cancel_delayed_work_sync (&vi->refill);if (netif_running (vi->dev)) {
Patches currently in stable-queue which might be from [email protected] are
queue-4.11/virtio-net-serialize-tx-routine-during-reset.patch