Skip to contentSkip to conversation

Patch "virtio-net: serialize tx routine during reset" has been added to the 4.11-stable tree

PATCH [email protected] 1 participant 1 message Jul 17, 2017

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

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 v
 	flush_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