On 1/9/24 08:57, Artem Kuzin wrote: > We already have per-NUMA node init_mm, but this is not enough. > We need this array of pointers in the task struct due to the proper pgd > (per-NUMA node) should be used for threads of process that occupy more > than one NUMA node. Let me repeat what Christoph said in a bit more forceful way. MAX_NUMNODES can be 1024. You're adding 1023*8 bytes of overhead for each process ... everywhere, including on my single node laptop. That's completely unacceptable. You need to find another way to do this. I'd suggest just ignoring the problem for now. Do multi-node processes with a later optimization.