diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c index 9ce46445a46b..ea127af58ada 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -3188,8 +3188,7 @@ static int vhost_add_used_n_in_order(struct vhost_virtqueue *vq, } start += nheads[i]; new += nheads[i]; - if (start >= vq->num) - start -= vq->num; + start &= vq->num - 1; } if (unlikely(vq->log_used)) {