From a88ba49e51037aab2d73bd68ad1da2de50e5c8f6 Mon Sep 17 00:00:00 2001 From: Chao Zhu Date: Wed, 30 Mar 2016 23:39:16 +0800 Subject: [PATCH] config: fix CPU and memory parameters on IBM POWER8 This patch fixes the max logic number and memory channel number settings on IBM POWER8 platform. 1. The max number of logic cores of a POWER8 processor is 96. Normally, there are two sockets on a server. So the max number of logic cores are 192. So this parch set CONFIG_RTE_MAX_LCORE to 256. 2. The socket number on POWER8 little endian platform can be larger than 16. This patch set CONFIG_RTE_MAX_NUMA_NODES to 32 for POWER8. 3. Currently, the max number of memory channels are hardcoded to 4. However, on a POWER8 machine, the max number of memory channels are 8. This patch removes the constraint. Signed-off-by: Chao Zhu --- config/defconfig_ppc_64-power8-linuxapp-gcc | 2 ++ lib/librte_eal/common/eal_common_options.c | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/config/defconfig_ppc_64-power8-linuxapp-gcc b/config/defconfig_ppc_64-power8-linuxapp-gcc index a80a19e2c0..9eb0cc42fd 100644 --- a/config/defconfig_ppc_64-power8-linuxapp-gcc +++ b/config/defconfig_ppc_64-power8-linuxapp-gcc @@ -36,6 +36,8 @@ CONFIG_RTE_ARCH="ppc_64" CONFIG_RTE_ARCH_PPC_64=y CONFIG_RTE_ARCH_64=y +CONFIG_RTE_MAX_LCORE=256 +CONFIG_RTE_MAX_NUMA_NODES=32 CONFIG_RTE_CACHE_LINE_SIZE=128 CONFIG_RTE_TOOLCHAIN="gcc" diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c index 29942ea6e2..2b418d525e 100644 --- a/lib/librte_eal/common/eal_common_options.c +++ b/lib/librte_eal/common/eal_common_options.c @@ -797,8 +797,7 @@ eal_parse_common_option(int opt, const char *optarg, /* force number of channels */ case 'n': conf->force_nchannel = atoi(optarg); - if (conf->force_nchannel == 0 || - conf->force_nchannel > 4) { + if (conf->force_nchannel == 0) { RTE_LOG(ERR, EAL, "invalid channel number\n"); return -1; }