[dpdk-dev] [PATCH v3] net/vhost: fix vhost invalid state

Maxime Coquelin maxime.coquelin at redhat.com
Thu Apr 12 09:40:38 CEST 2018



On 04/12/2018 09:35 AM, Maxime Coquelin wrote:
> 
> 
> On 04/12/2018 09:34 AM, Chen, Junjie J wrote:
>>>
>>>
>>>
>>> On 04/12/2018 09:21 AM, Tan, Jianfeng wrote:
>>>>
>>>>
>>>> On 4/12/2018 1:02 AM, Junjie Chen wrote:
>>>>> dev_start sets *dev_attached* after setup queues, this sets device to
>>>>> invalid state since no frontend is attached. Also destroy_device set
>>>>> *started* to zero which makes *allow_queuing* always zero until
>>>>> dev_start get called again. Actually, we should not determine queues
>>>>> existence by
>>>>> *dev_attached* but by queues pointers or other separated variable(s).
>>>>>
>>>>> Fixes: 30a701a53737 ("net/vhost: fix crash when creating vdev
>>>>> dynamically")
>>>>>
>>>>> Signed-off-by: Junjie Chen <junjie.j.chen at intel.com>
>>>>> Tested-by: Jens Freimann <jfreimann at redhat.com>
>>>>
>>>> Overall, looks great to me except a nit below.
>>>>
>>>> Reviewed-by: Jianfeng Tan <jianfeng.tan at intel.com>
>>>
>>> Thanks Jianfeng, I can handle the small change while applying.
>>>
>>> Can you confirm that it is implied that the queue are already 
>>> allocated, else we
>>> wouldn't find the internal resource and quit earlier (in case of 
>>> eth_dev_close
>>> called twice for example)?
>>
>> That is required, otherwise it generate segfault if we close device 
>> before queue setup. For example we
>> execute following steps in testpmd:
>> 1. port attach
>> 2. ctrl+D
> 
> Thanks for confirming Junjie, I will apply it as is then.
> 
> Reviewed-by: Maxime Coquelin <maxime.coquelin at redhat.com>
> 

Applied to dpdk-next-virtio/master

Thanks,
Maxime


More information about the dev mailing list