RE: [PATCH] virtio: document ENOSPC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> From: Michael S. Tsirkin <mst@xxxxxxxxxx>
> Sent: Tuesday, May 27, 2025 7:57 PM
> To: linux-kernel@xxxxxxxxxxxxxxx
> Cc: Parav Pandit <parav@xxxxxxxxxx>; Jason Wang <jasowang@xxxxxxxxxx>;
> Xuan Zhuo <xuanzhuo@xxxxxxxxxxxxxxxxx>; Eugenio Pérez
> <eperezma@xxxxxxxxxx>; virtualization@xxxxxxxxxxxxxxx
> Subject: [PATCH] virtio: document ENOSPC
> 
> drivers handle ENOSPC specially since it's an error one can get from a
> working VQ. Document the semantics.
> 
> Reported-by: Parav Pandit <parav@xxxxxxxxxx>
> Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>
> ---
>  drivers/virtio/virtio_ring.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/virtio/virtio_ring.c b/drivers/virtio/virtio_ring.c index
> b784aab66867..97ab0cce527d 100644
> --- a/drivers/virtio/virtio_ring.c
> +++ b/drivers/virtio/virtio_ring.c
> @@ -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[],
> --
> MST

Reviewed-by: Parav Pandit <parav@xxxxxxxxxx>






[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux