From b648fa157c629bef8ffb8fe52ece3cd1828d8b42 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Mon, 4 Feb 2008 23:50:07 -0500 Subject: [PATCH] --- yaml --- r: 82827 b: refs/heads/master c: a48bd8f67003c342e147309a331f656a5e75a5e4 h: refs/heads/master i: 82825: fe8e3dc8c3ce3ad28c252a9084c4360a18f7aac9 82823: bc814746d9f21ca9e40ae56d0a3875371c4a53e9 v: v3 --- [refs] | 2 +- trunk/drivers/net/virtio_net.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index a27812ce6955..caa59b30022b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e70f2f1bb8c8cf08ba0d836466f77eea27dd3474 +refs/heads/master: a48bd8f67003c342e147309a331f656a5e75a5e4 diff --git a/trunk/drivers/net/virtio_net.c b/trunk/drivers/net/virtio_net.c index be5688f5e931..bd4d26a36ead 100644 --- a/trunk/drivers/net/virtio_net.c +++ b/trunk/drivers/net/virtio_net.c @@ -283,6 +283,13 @@ static int virtnet_open(struct net_device *dev) struct virtnet_info *vi = netdev_priv(dev); napi_enable(&vi->napi); + + /* If all buffers were filled by other side before we napi_enabled, we + * won't get another interrupt, so process any outstanding packets + * now. virtnet_poll wants re-enable the queue, so we disable here. */ + vi->rvq->vq_ops->disable_cb(vi->rvq); + netif_rx_schedule(vi->dev, &vi->napi); + return 0; }