[dpdk-dev] [PATCH] build: fix memory init failures with 32-bit builds

Bruce Richardson bruce.richardson at intel.com
Thu Jul 2 12:59:13 CEST 2020


On Thu, Jul 02, 2020 at 11:57:21AM +0100, Bruce Richardson wrote:
> When building with meson, the default size of virtual address space
> reserved for mapping pages was globally set at 512GB, which is too big for
> use in 32-bit processes. To match the behaviour with "make", we configure
> this to be 512GB for 64-bit and 2MB for 32-bit builds.
> 
Oops, typo 2MB -> 2GB

> Bugzilla ID: 498
> Fixes: 66cc45e293ed ("mem: replace memseg with memseg lists")
> Cc: anatoly.burakov at intel.com
> 
> Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
> ---
>  config/meson.build  | 6 ++++++
>  config/rte_config.h | 1 -
>  2 files changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/config/meson.build b/config/meson.build
> index 351e268c1..72fdabff2 100644
> --- a/config/meson.build
> +++ b/config/meson.build
> @@ -238,6 +238,12 @@ dpdk_conf.set('RTE_ENABLE_TRACE_FP', get_option('enable_trace_fp'))
>  dpdk_conf.set('RTE_MAX_VFIO_GROUPS', 64)
>  dpdk_conf.set('RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB', 64)
>  dpdk_conf.set('RTE_LIBRTE_DPAA2_USE_PHYS_IOVA', true)
> +if dpdk_conf.get('RTE_ARCH_64')
> +	dpdk_conf.set('RTE_MAX_MEM_MB', 524288)
> +else
> +# for 32-bits we need smaller reserved memory areas
> +	dpdk_conf.set('RTE_MAX_MEM_MB', 2048)
> +endif
>  
>  
>  compile_time_cpuflags = []
> diff --git a/config/rte_config.h b/config/rte_config.h
> index e9201fd46..086acf74a 100644
> --- a/config/rte_config.h
> +++ b/config/rte_config.h
> @@ -38,7 +38,6 @@
>  #define RTE_MAX_MEM_MB_PER_LIST 32768
>  #define RTE_MAX_MEMSEG_PER_TYPE 32768
>  #define RTE_MAX_MEM_MB_PER_TYPE 65536
> -#define RTE_MAX_MEM_MB 524288
>  #define RTE_MAX_MEMZONE 2560
>  #define RTE_MAX_TAILQ 32
>  #define RTE_LOG_DP_LEVEL RTE_LOG_INFO
> -- 
> 2.25.1
> 


More information about the dev mailing list