summaryrefslogtreecommitdiff
path: root/drivers/net/virtio_net.c
diff options
context:
space:
mode:
authorPeter Zijlstra <peterz@infradead.org>2020-05-19 20:34:12 +0200
committerPeter Zijlstra <peterz@infradead.org>2020-05-19 20:34:12 +0200
commit9013196a467e770e1470cccee6c0fe435ef37c66 (patch)
tree2aefbb9d14a1a7513af9e752fe5bb80cf6b00c0c /drivers/net/virtio_net.c
parent2a0a24ebb499c9d499eea948d3fc108f936e36d4 (diff)
parent39f23ce07b9355d05a64ae303ce20d1c4b92b957 (diff)
Merge branch 'sched/urgent'
Diffstat (limited to 'drivers/net/virtio_net.c')
-rw-r--r--drivers/net/virtio_net.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index 11f722460513..ce07f52d89e7 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -1243,9 +1243,11 @@ static bool try_fill_recv(struct virtnet_info *vi, struct receive_queue *rq,
break;
} while (rq->vq->num_free);
if (virtqueue_kick_prepare(rq->vq) && virtqueue_notify(rq->vq)) {
- u64_stats_update_begin(&rq->stats.syncp);
+ unsigned long flags;
+
+ flags = u64_stats_update_begin_irqsave(&rq->stats.syncp);
rq->stats.kicks++;
- u64_stats_update_end(&rq->stats.syncp);
+ u64_stats_update_end_irqrestore(&rq->stats.syncp, flags);
}
return !oom;