]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
virtio: document ENOSPC
authorMichael S. Tsirkin <mst@redhat.com>
Tue, 27 May 2025 14:26:29 +0000 (10:26 -0400)
committerMichael S. Tsirkin <mst@redhat.com>
Fri, 1 Aug 2025 13:11:07 +0000 (09:11 -0400)
drivers handle ENOSPC specially since it's an error one can
get from a working VQ. Document the semantics.

Message-Id: <2e6ec46b8d5e6755be291cec8e2ec57ef286e97b.1748356035.git.mst@redhat.com>
Reported-by: Parav Pandit <parav@nvidia.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Parav Pandit <parav@nvidia.com>
drivers/virtio/virtio_ring.c

index 4397392bfef000ac690563afc50d381dec2c374c..f5062061c40843c3fa6431dc4f8d30586bd45f5e 100644 (file)
@@ -2296,6 +2296,10 @@ static inline int virtqueue_add(struct virtqueue *_vq,
  * at the same time (except where noted).
  *
  * Returns zero or a negative error (ie. ENOSPC, ENOMEM, EIO).
+ *
+ * NB: ENOSPC is a special code that is only returned on an attempt to add a
+ * buffer to a full VQ. It indicates that some buffers are outstanding and that
+ * the operation can be retried after some buffers have been used.
  */
 int virtqueue_add_sgs(struct virtqueue *_vq,
                      struct scatterlist *sgs[],