aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/virtio/virtio_ring.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/virtio/virtio_ring.c b/drivers/virtio/virtio_ring.c
index 72bf8bc09014..21d9a62767af 100644
--- a/drivers/virtio/virtio_ring.c
+++ b/drivers/virtio/virtio_ring.c
@@ -87,8 +87,11 @@ static int vring_add_buf(struct virtqueue *_vq,
87 if (vq->num_free < out + in) { 87 if (vq->num_free < out + in) {
88 pr_debug("Can't add buf len %i - avail = %i\n", 88 pr_debug("Can't add buf len %i - avail = %i\n",
89 out + in, vq->num_free); 89 out + in, vq->num_free);
90 /* We notify *even if* VRING_USED_F_NO_NOTIFY is set here. */ 90 /* FIXME: for historical reasons, we force a notify here if
91 vq->notify(&vq->vq); 91 * there are outgoing parts to the buffer. Presumably the
92 * host should service the ring ASAP. */
93 if (out)
94 vq->notify(&vq->vq);
92 END_USE(vq); 95 END_USE(vq);
93 return -ENOSPC; 96 return -ENOSPC;
94 } 97 }