Re: [PATCH] net: skbuff: allocate the fclone in the current NUMA node

From: Shijie Huang
Date: Tue Feb 20 2024 - 03:38:17 EST



在 2024/2/20 16:17, Eric Dumazet 写道:
On Tue, Feb 20, 2024 at 7:26 AM Shijie Huang
<shijie@xxxxxxxxxxxxxxxxxxxxxxxxxx> wrote:

在 2024/2/20 13:32, Eric Dumazet 写道:
On Tue, Feb 20, 2024 at 3:18 AM Huang Shijie
<shijie@xxxxxxxxxxxxxxxxxxxxxx> wrote:
The current code passes NUMA_NO_NODE to __alloc_skb(), we found
it may creates fclone SKB in remote NUMA node.
This is intended (WAI)
Okay. thanks a lot.

It seems I should fix the issue in other code, not the networking.

What about the NUMA policies of the current thread ?
We use "numactl -m 0" for memcached, the NUMA policy should allocate
fclone in

node 0, but we can see many fclones were allocated in node 1.

We have enough memory to allocate these fclones in node 0.

Has NUMA_NO_NODE behavior changed recently?
I guess not.
What means : "it may creates" ? Please be more specific.
When we use the memcached for testing in NUMA, there are maybe 20% ~ 30%
fclones were allocated in

remote NUMA node.
Interesting, how was it measured exactly ?

I created a private patch to record the status for each fclone allocation.


Are you using SLUB or SLAB ?

I think I use SLUB. (CONFIG_SLUB=y, CONFIG_SLAB_MERGE_DEFAULT=y,CONFIG_SLUB_CPU_PARTIAL=y)


Thanks

Huang Shijie