@@ -5217,6 +5217,14 @@ netdev_dpdk_vhost_client_reconfigure(struct netdev *netdev)
/* Enable zero copy flag, if requested */
if (zc_enabled) {
vhost_flags |= RTE_VHOST_USER_DEQUEUE_ZERO_COPY;
+ /*
+ * DPDK vHost library doesn't allow zero-copy with linear buffers
+ * currently. Hence disabling the Linear buffer check until the
+ * issue is fixed in DPDK.
+ */
+ vhost_flags &= ~RTE_VHOST_USER_LINEARBUF_SUPPORT;
+ VLOG_WARN("Zero copy enabled and hence disabling linear buffer"
+ " check for vHost port %s", dev->up.name);
}
/* Enable External Buffers if TCP Segmentation Offload is enabled. */
In order to use dequeue-zero-copy in DPDK Vhost library, application has to disable linear buffer option. Hence dequeue-zero-copy is not supported for vhost application thats requries linear buffers. This patch is a workaround to support dq-zero-copy in OVS by overcoming the current limitation in DPDK. https://patches.dpdk.org/patch/67200/ Note: The patch needs to be removed once the fix is integrated in DPDK. Signed-off-by: Sivaprasad Tummala <Sivaprasad.Tummala@intel.com> --- lib/netdev-dpdk.c | 8 ++++++++ 1 file changed, 8 insertions(+)