From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark McLoughlin Subject: [PATCH 5/9] kvm: qemu: Disable recv notifications until avail buffers exhausted Date: Thu, 24 Jul 2008 12:46:15 +0100 Message-ID: <1216899979-32532-6-git-send-email-markmc@redhat.com> References: <1216899979-32532-1-git-send-email-markmc@redhat.com> <1216899979-32532-2-git-send-email-markmc@redhat.com> <1216899979-32532-3-git-send-email-markmc@redhat.com> <1216899979-32532-4-git-send-email-markmc@redhat.com> <1216899979-32532-5-git-send-email-markmc@redhat.com> Cc: Herbert Xu , Rusty Russell , Mark McLoughlin To: kvm@vger.kernel.org Return-path: Received: from mail25.svc.cra.dublin.eircom.net ([159.134.118.54]:46488 "HELO mail25.svc.cra.dublin.eircom.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1752486AbYGXLxN (ORCPT ); Thu, 24 Jul 2008 07:53:13 -0400 In-Reply-To: <1216899979-32532-5-git-send-email-markmc@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: Signed-off-by: Mark McLoughlin --- qemu/hw/virtio-net.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/qemu/hw/virtio-net.c b/qemu/hw/virtio-net.c index 4adfa42..419a2d7 100644 --- a/qemu/hw/virtio-net.c +++ b/qemu/hw/virtio-net.c @@ -106,9 +106,12 @@ static int virtio_net_can_receive(void *opaque) !(n->vdev.status & VIRTIO_CONFIG_S_DRIVER_OK)) return 0; - if (n->rx_vq->vring.avail->idx == n->rx_vq->last_avail_idx) + if (n->rx_vq->vring.avail->idx == n->rx_vq->last_avail_idx) { + n->rx_vq->vring.used->flags &= ~VRING_USED_F_NO_NOTIFY; return 0; + } + n->rx_vq->vring.used->flags |= VRING_USED_F_NO_NOTIFY; return 1; } -- 1.5.4.1