virtio: make add_buf return capacity remaining
This API change means that virtio_net can tell how much capacity remains for buffers. It's necessarily fuzzy, since VIRTIO_RING_F_INDIRECT_DESC means we can fit any number of descriptors in one, *if* we can kmalloc. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Cc: Dinesh Subhraveti <dineshs@us.ibm.com>
This commit is contained in:
@ -208,7 +208,11 @@ add_head:
|
||||
|
||||
pr_debug("Added buffer head %i to %p\n", head, vq);
|
||||
END_USE(vq);
|
||||
return 0;
|
||||
|
||||
/* If we're indirect, we can fit many (assuming not OOM). */
|
||||
if (vq->indirect)
|
||||
return vq->num_free ? vq->vring.num : 0;
|
||||
return vq->num_free;
|
||||
}
|
||||
|
||||
static void vring_kick(struct virtqueue *_vq)
|
||||
|
Reference in New Issue
Block a user