@@ -1297,6 +1297,9 @@ netdev_dpdk_vhost_construct(struct netdev *netdev)
dev->vhost_id = xasprintf("%s/%s", dpdk_get_vhost_sock_dir(), name);
dev->vhost_driver_flags &= ~RTE_VHOST_USER_CLIENT;
+
+ /* There is no support for multi-segments buffers. */
+ dev->vhost_driver_flags |= RTE_VHOST_USER_LINEARBUF_SUPPORT;
err = rte_vhost_driver_register(dev->vhost_id, dev->vhost_driver_flags);
if (err) {
VLOG_ERR("vhost-user socket device setup failure for socket %s\n",
@@ -4423,6 +4426,9 @@ netdev_dpdk_vhost_client_reconfigure(struct netdev *netdev)
/* Register client-mode device. */
vhost_flags |= RTE_VHOST_USER_CLIENT;
+ /* There is no support for multi-segments buffers. */
+ vhost_flags |= RTE_VHOST_USER_LINEARBUF_SUPPORT;
+
/* Enable IOMMU support, if explicitly requested. */
if (dpdk_vhost_iommu_enabled()) {
vhost_flags |= RTE_VHOST_USER_IOMMU_SUPPORT;
There is no support for multi-segmented buffers, so flag that to vhost library. Signed-off-by: Flavio Leitner <fbl@sysclose.org> --- lib/netdev-dpdk.c | 6 ++++++ 1 file changed, 6 insertions(+) Changelog: - v3 * added period at the end of comments.