summaryrefslogtreecommitdiff
path: root/drivers/net/virtio_net.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2016-11-23 10:23:09 +0100
committerIngo Molnar <mingo@kernel.org>2016-11-23 10:23:09 +0100
commitec84f0056711efe93f034c86dd65e0de8d3531ff (patch)
tree3e50d385d645487924bcac1f5fb33b496cda6dc0 /drivers/net/virtio_net.c
parentd03266910a533d874c01ef2ca8dc73009f2925fa (diff)
parent23400ac997062647f2b63c82030d189671b1effe (diff)
Merge branch 'linus' into sched/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/net/virtio_net.c')
-rw-r--r--drivers/net/virtio_net.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index fd8b1e62301f..7276d5a95bd0 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -1497,6 +1497,11 @@ static void virtnet_free_queues(struct virtnet_info *vi)
netif_napi_del(&vi->rq[i].napi);
}
+ /* We called napi_hash_del() before netif_napi_del(),
+ * we need to respect an RCU grace period before freeing vi->rq
+ */
+ synchronize_net();
+
kfree(vi->rq);
kfree(vi->sq);
}