[dpdk-dev] [PATCH] vhost: fix virtqueue initialization

Maxime Coquelin maxime.coquelin at redhat.com
Mon Nov 9 19:39:42 CET 2020



On 11/9/20 7:37 PM, Ferruh Yigit wrote:
> On 11/6/2020 2:47 PM, Maxime Coquelin wrote:
>> 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 at dpdk.org
>>
> 
> Since the issue is introduced in this release, there is nothing to
> backport and stable tag is not required, removing it in next-net.

I cc'ed stable because it is fixing a fix that was stable candidate.


>> Reported-by: Yu Jiang <yux.jiang at intel.com>
>> Signed-off-by: Maxime Coquelin <maxime.coquelin at 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;
>>
> 



More information about the dev mailing list