diff mbox series

[ovs-dev,dpdk-latest,v2,2/4] vhost: Disable multi-segmented buffers

Message ID 20191231201411.152613-3-fbl@sysclose.org
State Changes Requested
Headers show
Series [ovs-dev,dpdk-latest,v2,1/4] dp-packet: preserve headroom when cloning a pkt batch | expand

Commit Message

Flavio Leitner Dec. 31, 2019, 8:14 p.m. UTC
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(+)

Comments

Stokes, Ian Jan. 6, 2020, 8:24 p.m. UTC | #1
On 12/31/2019 8:14 PM, Flavio Leitner wrote:
> 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(+)
> 
> diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
> index 2423d26ee..57bff5e58 100644
> --- a/lib/netdev-dpdk.c
> +++ b/lib/netdev-dpdk.c
> @@ -1288,6 +1288,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 */

Minor nit, missing period at end of comment here and the comment below.

Other than that looks good to me.

Acked-by: Ian Stokes <ian.stokes@intel.com>

> +    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",
> @@ -4355,6 +4358,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;
>
diff mbox series

Patch

diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
index 2423d26ee..57bff5e58 100644
--- a/lib/netdev-dpdk.c
+++ b/lib/netdev-dpdk.c
@@ -1288,6 +1288,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",
@@ -4355,6 +4358,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;