[dpdk-stable] [PATCH v4] examples/vhost: fix failure to launch dpdk-vhost

Xia, Chenbo chenbo.xia at intel.com
Wed Nov 3 05:58:04 CET 2021


Hi,

> -----Original Message-----
> From: Ma, WenwuX <wenwux.ma at intel.com>
> Sent: Wednesday, November 3, 2021 10:17 PM
> To: dev at dpdk.org
> Cc: maxime.coquelin at redhat.com; Xia, Chenbo <chenbo.xia at intel.com>; Yigit,
> Ferruh <ferruh.yigit at intel.com>; Jiang, Cheng1 <cheng1.jiang at intel.com>; Hu,
> Jiayu <jiayu.hu at intel.com>; Yang, YvonneX <yvonnex.yang at intel.com>; Ma, WenwuX
> <wenwux.ma at intel.com>; stable at dpdk.org
> Subject: [PATCH v4] examples/vhost: fix failure to launch dpdk-vhost
> 
> When the default max queue value of vhost is 128, dpdk-vhost will fail to
> launch with a 40G i40e port due to the mbuf allocation of the port queue fails.
> Therefore, we modify the default value of max queue from 128 to 512,
> it will ensure that there are enough mbufs.
> 
> Fixes: 4796ad63ba1f ("examples/vhost: import userspace vhost application")
> Cc: stable at dpdk.org

When I was tracking the bad commit, I notice this change is on purpose to save hugepages:

commit f17eb179046962fdc29c3609b1c9bd46bfefa4f5
Author: Bernard Iremonger <bernard.iremonger at intel.com>
Date:   Thu Dec 10 15:49:17 2015 +0000

    examples/vhost: reduce number of hugepages needed

    Add #ifndef MAX_QUEUES to change MAX_QUEUES at compile time if needed.
    Change MAX_QUEUES from 512 to 128 to reduce the number of hugepages
    required by the vhost-switch program.

    To change MAX_QUEUES add '-D MAX_QUEUES=512' to the EXTRA_CFLAGS variable,
    before building the application.

    Signed-off-by: Bernard Iremonger <bernard.iremonger at intel.com>
    Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>

So as there's a way to solve the problem (although not perfect), I would suggest
using the compiler flag to do tests with the specific NIC.

If no one has objection, let's drop the patch.

Thanks,
Chenbo

> 
> Signed-off-by: Wenwu Ma <wenwux.ma at intel.com>
> Reviewed-by: Maxime Coquelin <maxime.coquelin at redhat.com>
> ---
>  examples/vhost/main.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/examples/vhost/main.c b/examples/vhost/main.c
> index bc3d71c898..36969a4de5 100644
> --- a/examples/vhost/main.c
> +++ b/examples/vhost/main.c
> @@ -29,7 +29,7 @@
>  #include "main.h"
> 
>  #ifndef MAX_QUEUES
> -#define MAX_QUEUES 128
> +#define MAX_QUEUES 512
>  #endif
> 
>  /* the maximum number of external ports supported */
> --
> 2.25.1



More information about the stable mailing list