vhost: fix virtqueue initialization
This patches fixes virtqueue initialization issue causing
segfault or file descriptor being closed unexpectedly.
The wrong index was passed to init_vring_queue() by
alloc_vring_queue() when a hole in the virtqueue array was
met.
Fixes: 8acd7c2133
("vhost: fix virtqueues metadata allocation")
Cc: stable@dpdk.org
Reported-by: Yu Jiang <yux.jiang@intel.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
Tested-by: Yu Jiang <yux.jiang@intel.com>
This commit is contained in:
parent
45ba914134
commit
7804bbd13a
@ -605,7 +605,7 @@ alloc_vring_queue(struct virtio_net *dev, uint32_t vring_idx)
|
||||
}
|
||||
|
||||
dev->virtqueue[i] = vq;
|
||||
init_vring_queue(dev, vring_idx);
|
||||
init_vring_queue(dev, i);
|
||||
rte_spinlock_init(&vq->access_lock);
|
||||
vq->avail_wrap_counter = 1;
|
||||
vq->used_wrap_counter = 1;
|
||||
|
Loading…
Reference in New Issue
Block a user