Re: [PATCH 2/2] virtio_ring: add unlikely annotation for free descs check

From: Stefano Garzarella
Date: Tue Mar 29 2022 - 03:50:38 EST


On Mon, Mar 28, 2022 at 06:58:17PM +0800, Xianting Tian wrote:
The 'if (vq->vq.num_free < descs_used)' check will almost always be false.

Signed-off-by: Xianting Tian <xianting.tian@xxxxxxxxxxxxxxxxx>
---
drivers/virtio/virtio_ring.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Stefano Garzarella <sgarzare@xxxxxxxxxx>


diff --git a/drivers/virtio/virtio_ring.c b/drivers/virtio/virtio_ring.c
index d597fc0874ec..ab6d5f0cb579 100644
--- a/drivers/virtio/virtio_ring.c
+++ b/drivers/virtio/virtio_ring.c
@@ -525,7 +525,7 @@ static inline int virtqueue_add_split(struct virtqueue *_vq,
descs_used = total_sg;
}

- if (vq->vq.num_free < descs_used) {
+ if (unlikely(vq->vq.num_free < descs_used)) {
pr_debug("Can't add buf len %i - avail = %i\n",
descs_used, vq->vq.num_free);
/* FIXME: for historical reasons, we force a notify here if
--
2.17.1