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

Stokes, Ian ian.stokes at intel.com
Mon Jul 6 15:30:06 UTC 2020



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.

Regards
Ian


More information about the dev mailing list