summaryrefslogtreecommitdiff
path: root/drivers/net/virtio_net.c
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2021-01-13 17:56:59 +0000
committerMark Brown <broonie@kernel.org>2021-01-13 17:56:59 +0000
commit2d446c98cde3ffccfd14849b7dda4194ab62dd20 (patch)
tree9b7f048dcddec04d94527132834fc056745fdb6d /drivers/net/virtio_net.c
parent44a4cfad8d78efcda9ec0dd97ceea38d8b602f24 (diff)
parent7c53f6b671f4aba70ff15e1b05148b10d58c2837 (diff)
Merge v5.11-rc3
Diffstat (limited to 'drivers/net/virtio_net.c')
-rw-r--r--drivers/net/virtio_net.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index 4c41df624dbb..508408fbe78f 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -2093,14 +2093,16 @@ static int virtnet_set_channels(struct net_device *dev,
get_online_cpus();
err = _virtnet_set_queues(vi, queue_pairs);
- if (!err) {
- netif_set_real_num_tx_queues(dev, queue_pairs);
- netif_set_real_num_rx_queues(dev, queue_pairs);
-
- virtnet_set_affinity(vi);
+ if (err) {
+ put_online_cpus();
+ goto err;
}
+ virtnet_set_affinity(vi);
put_online_cpus();
+ netif_set_real_num_tx_queues(dev, queue_pairs);
+ netif_set_real_num_rx_queues(dev, queue_pairs);
+ err:
return err;
}