On 04-Apr-22 1:32 PM, Deepak Khandelwal wrote:
when secondary process is initialized(rte_eal_init),
external memroy segments should not be attached.
These segments will be attached by explicitly invoking
rte_malloc_heap_memory_attach API
Fixes: ff3619d6244b ("malloc: allow attaching to external memory chunks")
Cc: sta...@dpdk.org
Signed-off-by: Deepak Khandelwal <deepak.khandel...@intel.com>
Suggested-by: Anatoly Burakov <anatoly.bura...@intel.com>
---
lib/eal/linux/eal_memory.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/eal/linux/eal_memory.c b/lib/eal/linux/eal_memory.c
index ee1a9e6..18d2176 100644
--- a/lib/eal/linux/eal_memory.c
+++ b/lib/eal/linux/eal_memory.c
@@ -1875,7 +1875,7 @@ void numa_error(char *where)
msl = &mcfg->memsegs[msl_idx];
/* skip empty memseg lists */
- if (msl->memseg_arr.len == 0)
+ if (msl->memseg_arr.len == 0 || msl->external)
continue;
if (rte_fbarray_attach(&msl->memseg_arr)) {
Actually, this needs to be implemented for BSD as well. Windows doesn't
have support for secondary processes yet, so it's not applicable to
Windows as far as i can tell.
--
Thanks,
Anatoly