[dpdk-dev] [PATCH] examples/vmdq: Fix the core dump issue when mem_pool is more than 34

Sun, Xutao xutao.sun at intel.com
Thu Oct 15 09:54:36 CEST 2015



> -----Original Message-----
> From: De Lara Guarch, Pablo
> Sent: Tuesday, October 13, 2015 3:59 PM
> To: Sun, Xutao; dev at dpdk.org
> Subject: RE: [dpdk-dev] [PATCH] examples/vmdq: Fix the core dump issue
> when mem_pool is more than 34
> 
> Hi Xutao,
> 
> > -----Original Message-----
> > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Xutao Sun
> > Sent: Tuesday, October 13, 2015 8:29 AM
> > To: dev at dpdk.org
> > Subject: [dpdk-dev] [PATCH] examples/vmdq: Fix the core dump issue
> > when mem_pool is more than 34
> >
> > Macro MAX_QUEUES was defined to 128, only allow 16 mem_pools in
> > theory.
> > When running vmdq_app with more than 34 mem_pools, it will cause the
> > core_dump issue.
> > Change MAX_QUEUES to 1024 will solve this issue.
> >
> > Signed-off-by: Xutao Sun <xutao.sun at intel.com>
> > ---
> >  examples/vmdq/main.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/examples/vmdq/main.c b/examples/vmdq/main.c index
> > a142d49..b463cfb 100644
> > --- a/examples/vmdq/main.c
> > +++ b/examples/vmdq/main.c
> > @@ -69,7 +69,7 @@
> >  #include <rte_mbuf.h>
> >  #include <rte_memcpy.h>
> >
> > -#define MAX_QUEUES 128
> > +#define MAX_QUEUES 1024
> >  /*
> >   * For 10 GbE, 128 queues require roughly
> >   * 128*512 (RX/TX_queue_nb * RX/TX_ring_descriptors_nb) per port.
> > --
> > 1.9.3
> 
> Just for clarification, when you say mem_pools, do you mean vmdq pools?
> Also, if you are going to increase MAX_QUEUES, shouldn't you increase the
> NUM_MBUFS_PER_PORT?
> Looking at the comment below, looks like there is a calculation of number of
> mbufs based on number of queues.
> Plus, I assume 128 is the maximum number of queues per port, and as far as I
> know, only Fortville supports 256 as maximum.
> 
> Thanks,
> Pablo


Hi Pablo,

I mean vmdq pools when I say mem_pools.
And as you say, NUM_MBUFS_PER_PORT should be increased actually. 
I may use macro to replace the old expression. 
#define NUM_MBUFS_PER_PORT (MAX_QUEUES * max(RTE_TEST_RX_DESC_DEFAULT,RTE_TEST_TX_DESC_DEFAULT))
And this patch is to fix the issue about running VMDQ on  Fortville, so the maximum number of queues is larger than 128.
Thank you very much for your advice!

Thanks,
Xutao


More information about the dev mailing list