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

Stokes, Ian ian.stokes at intel.com
Wed Jul 1 10:28:36 UTC 2020

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 

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.

OVS only supports zero-copy to date as an experimental feature with 
dpdkvhostuserclient port types.

We were aiming to update the validated DPDK versions as follows and 
recommend them as minimum versions due to the inclusion of CSE fixes.

OVS 2.11 -> 18.11.6 -> 18.11.9
OVS 2.12 -> 18.11.6 -> 18.11.9
OVS 2.13 -> 19.11.0 -> 19.11.3
OVS Master -> 19.11.0 -> 19.11.3

However recommending these DPDK version will trigger the dpdk zero copy 
functionality break in OVS.

What are peoples thoughts here on how to proceed?
Are people aware if the feature is used in deployments to date? If not, 
as it's experimental is it something that should be removed?

I'm aware that there is discussion ongoing about tagging for 2.13.1, 
2.12.1, 2.11.3 releases, I'm thinking the vhost zero copy issue should 
be resolved within that time frame and before we update the recommended 
DPDK versions.


More information about the dev mailing list