patches for DPDK stable branches
 help / color / mirror / Atom feed
* [dpdk-stable] [PATCH] vhost: fix virtqueue initialization
@ 2020-11-06 14:47 Maxime Coquelin
  2020-11-06 15:56 ` [dpdk-stable] [dpdk-dev] " David Marchand
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Maxime Coquelin @ 2020-11-06 14:47 UTC (permalink / raw)
  To: dev, chenbo.xia, amorenoz; +Cc: stable, Maxime Coquelin, Yu Jiang

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: 8acd7c213353 ("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>
---
 lib/librte_vhost/vhost.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_vhost/vhost.c b/lib/librte_vhost/vhost.c
index 8a151a9c1d..b83cf639eb 100644
--- a/lib/librte_vhost/vhost.c
+++ b/lib/librte_vhost/vhost.c
@@ -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;
-- 
2.26.2


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-11-09 18:40 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-06 14:47 [dpdk-stable] [PATCH] vhost: fix virtqueue initialization Maxime Coquelin
2020-11-06 15:56 ` [dpdk-stable] [dpdk-dev] " David Marchand
2020-11-09  5:09 ` [dpdk-stable] " Jiang, YuX
2020-11-09 18:38   ` [dpdk-stable] [dpdk-dev] " Ferruh Yigit
2020-11-09 16:31 ` [dpdk-stable] " Maxime Coquelin
2020-11-09 18:37 ` [dpdk-stable] [dpdk-dev] " Ferruh Yigit
2020-11-09 18:39   ` Maxime Coquelin
2020-11-09 18:40   ` Ferruh Yigit

patches for DPDK stable branches

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/stable/0 stable/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 stable stable/ https://inbox.dpdk.org/stable \
		stable@dpdk.org
	public-inbox-index stable

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.stable


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git