[dpdk-dev] [PATCH v2] vhost: fix zero-copy cannot be enabled

Ferruh Yigit ferruh.yigit at intel.com
Tue May 19 15:43:58 CEST 2020


On 5/19/2020 8:13 AM, Ye Xiaolong wrote:
> Hi, Maxime & Ferruh
> 
> This patch is used to fix the regression caused by commit 
> 715070ea10e6 ("vhost: prevent zero-copy with incompatible client mode") which
> was introduced in RC2, I think we should get it in this release.

+1, v4 of the patch applied to next-net for -rc3

> 
> Thanks,
> Xiaolong
> 
> On 05/19, Ye Xiaolong wrote:
>> On 05/13, Xuan Ding wrote:
>>> This patch fixes the situation where vhost-user cannot start as server with
>>> dequeue_zero_copy enabled.
>>>
>>> Using flag instead of vsocket->is_server to determine whether vhost-user is
>>> in client mode. Because vsocket->is_server is not ready at this time.
>>>
>>> Cc: stable at dpdk.org
>>
>> Fixes: 715070ea10e6 ("vhost: prevent zero-copy with incompatible client mode")
>>
>> And no need to cc stable since above commit is introduced in this release.
>>
>>>
>>> Signed-off-by: Xuan Ding <xuan.ding at intel.com>
>>> ---
>>>
>>> v2:
>>> * Added the description of problem solved in commit log.
>>> ---
>>> lib/librte_vhost/socket.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/lib/librte_vhost/socket.c b/lib/librte_vhost/socket.c
>>> index bb8d0d780..0a66ef976 100644
>>> --- a/lib/librte_vhost/socket.c
>>> +++ b/lib/librte_vhost/socket.c
>>> @@ -926,7 +926,7 @@ rte_vhost_driver_register(const char *path, uint64_t flags)
>>> 			ret = -1;
>>> 			goto out_mutex;
>>> 		}
>>> -		if (!vsocket->is_server) {
>>> +		if ((flags & RTE_VHOST_USER_CLIENT) != 0) {
>>> 			VHOST_LOG_CONFIG(ERR,
>>> 			"error: zero copy is incompatible with vhost client mode\n");
>>> 			ret = -1;
>>> -- 
>>> 2.17.1
>>>
>>
>> Reviewed-by: Xiaolong Ye <xiaolong.ye at intel.com>



More information about the dev mailing list