[ovs-dev] Vhost-user dequeue zero copy removal

Kevin Traynor ktraynor at redhat.com
Mon Jul 6 15:34:47 UTC 2020


On 06/07/2020 16:30, Stokes, Ian wrote:
> 
> 
> On 7/2/2020 12:56 PM, Kevin Traynor wrote:
>> On 02/07/2020 12:18, Stokes, Ian wrote:
>>>
>>>
>>> On 7/1/2020 3:08 PM, Kevin Traynor wrote:
>>>> On 01/07/2020 13:46, Ilya Maximets wrote:
>>>>> On 7/1/20 1:46 PM, Kevin Traynor wrote:
>>>>>> On 01/07/2020 11:28, Stokes, Ian wrote:
>>>>>>> Hi All,
>>>>>>>
>>>>>>> While completing validation work for DPDK 18.11.9 and 19.11.3 it was
>>>>>>> found that zero-copy for vhostuserclient devices is no longer possible.
>>>>>>> Please see commit below from 18.11.9 (note this patch is also in DPDK
>>>>>>> 19.11.3)
>>>>>>>
>>>>>>
>>>>>> Thanks catching this in your validation, it almost certainly wouldn't
>>>>>> have been caught otherwise.
>>>>>
>>>>> Definitely a good catch.  Thanks.
>>>>>
>>>>>>
>>>>>>>
>>>>>>> commit 81e025d7ed6a802845909df6fb90505508dc0fbf
>>>>>>> Author: Xuan Ding <xuan.ding at intel.com>
>>>>>>> Date:   Wed Apr 29 02:59:46 2020 +0000
>>>>>>>
>>>>>>>        vhost: prevent zero-copy with incompatible client mode
>>>>>>>
>>>>>>>        [ upstream commit 715070ea10e6da1169deef2a3ea77ae934b4c333 ]
>>>>>>>
>>>>>>>        In server mode, virtio-user inits under the assumption that vhost-user
>>>>>>>        supports a list of features. However, this could be problematic when
>>>>>>>        in_order feature is negotiated but not supported by vhost-user when
>>>>>>>        enables dequeue_zero_copy later.
>>>>>>>
>>>>>>>        Add handling when vhost-user enables dequeue_zero_copy as client.
>>>>>
>>>>> IIUC, this patch basically drops the feature for perfectly fine cases
>>>>> with VMs.  While it was intended to forbid running zero-copy with virtio-user
>>>>> it breaks a different usecase blocking the feature entirely.
>>>>>
>>>>> Isn't it an API breakage?  IMHO, it should not have been backported in the
>>>>> first place, since dropping the feature is not what usually expected in
>>>>> stable releases.  And this must be in release notes anyway.
>>>>>
>>>>> I think, the right solution here should be to make a patch to handle specific
>>>>> virtio-user case and stop blocking valid cases and release new DPDK stable
>>>>> versions for already released ones.
>>>>>
>>>>> If it's too hard to make a patch or no-one wants to work on this, just revert
>>>>> these changes from stable branches and release a new stable DPDK version
>>>>> for both 18.11 and 19.11.  But anyway, regression should be addressed in DPDK
>>>>> before 20.11 or it will block OVS upgrade to that version.
>>>>>
>>>>
>>>> It is not in a released 18.11. It was caught by Ian's team as part of
>>>> 18.11.9-rc testing.
>>>>
>>>
>>> OK so it seems like we can use 18.11.9 for the 2.11 and 2.13 branches as
>>> it will have this patch reverted.
>>>
>>> Is there an 18.11.9 RC3 planned? We can test it if it's of use.
>>>
>>
>> I've just pushed it to the 18:11 branch, can you test with that?
>>
>> I wasn't planning on an rc3 at this stage for just this patch, but if
>> you need a tarball for testing automation or something, let me know and
>> I can create it.
> 
> Thanks Kevin,
> 
> the team tested on our side and see the expected behavior now. Looks 
> good to go.
> 

Thanks Ian. I should be able to make the release in the next few days,
once a couple of other open items are closed.

> Regards
> Ian
> 



More information about the dev mailing list