<div dir="ltr">Already tried the first suggestion with no luck, the secondary always gets stuck:<div><br></div><div>#0 0x00007fc6d3eb05ab in flock () at ../sysdeps/unix/syscall-template.S:78<br>#1 0x00007fc6d3ba1343 in sync_walk () from /usr/local/lib/librte_eal.so.22<br>#2 0x00007fc6d3b8402b in rte_memseg_list_walk_thread_unsafe () from /usr/local/lib/librte_eal.so.22<br>#3 0x00007fc6d3ba18bf in eal_memalloc_sync_with_primary () from /usr/local/lib/librte_eal.so.22<br>#4 0x00007fc6d3ba24b5 in rte_eal_hugepage_attach () from /usr/local/lib/librte_eal.so.22<br>#5 0x00007fc6d3b848f1 in rte_eal_memory_init () from /usr/local/lib/librte_eal.so.22<br>#6 0x00007fc6d3b782aa in rte_eal_init.cold () from /usr/local/lib/librte_eal.so.22<br></div><div><br></div><div>For the second info:</div><div>if I prevent the primary to allocate on the NUMA where secondary is running, then, the secondary doesn't get stuck.</div><div><br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Il giorno mer 24 ago 2022 alle ore 11:14 Antonio Di Bacco <<a href="mailto:a.dibacco.ks@gmail.com">a.dibacco.ks@gmail.com</a>> ha scritto:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Can you try launching the secondary with some delay in order not to<br>
overlap with memory allocations done in the primary?<br>
Is your primary allocating memory on NUMA 0 where the secondary is running?<br>
<br>
On Tue, Aug 23, 2022 at 4:54 PM Anna Tauzzi <<a href="mailto:admin@argonnetech.net" target="_blank">admin@argonnetech.net</a>> wrote:<br>
><br>
> I have a primary process that spawns a secondary process.Primary is on NUMA 1 while secondary on NUMA 0.<br>
> The secondary process starts up but when calling rte_eal_init it gets stuck with this backtrace:<br>
><br>
> flock()<br>
> sync_walk()<br>
> rte_memseg_list_walk_thread_unsafe()<br>
> eal_memalloc_sync_with_primary()<br>
> rte_eal_hugepage_attach()<br>
> rte_eal_memory_init()<br>
> rte_eal_init.cold()<br>
><br>
> While starting the secondary, it is possible that the primary is allocating memory on different NUMAs. I'm saying this because if in the primary I replace the dpdk memory allocation function (rte_zalloc...) with a plain memalign I don't get this problem.<br>
><br>
><br>
><br>
</blockquote></div>