The patch titled Subject: kcov: allocate per-CPU memory on the relevant node has been added to the -mm tree. Its filename is kcov-allocate-per-cpu-memory-on-the-relevant-node.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/kcov-allocate-per-cpu-memory-on-the-relevant-node.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/kcov-allocate-per-cpu-memory-on-the-relevant-node.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx> Subject: kcov: allocate per-CPU memory on the relevant node During boot kcov allocates per-CPU memory which is used later if remote/ softirq processing is enabled. Allocate the per-CPU memory on the CPU local node to avoid cross node memory access. Link: https://lkml.kernel.org/r/20210923164741.1859522-4-bigeasy@xxxxxxxxxxxxx Link: https://lore.kernel.org/r/20210830172627.267989-4-bigeasy@xxxxxxxxxxxxx Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx> Acked-by: Dmitry Vyukov <dvyukov@xxxxxxxxxx> Acked-by: Marco Elver <elver@xxxxxxxxxx> Tested-by: Marco Elver <elver@xxxxxxxxxx> Cc: Andrey Konovalov <andreyknvl@xxxxxxxxx> Cc: Clark Williams <williams@xxxxxxxxxx> Cc: Steven Rostedt <rostedt@xxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- kernel/kcov.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- a/kernel/kcov.c~kcov-allocate-per-cpu-memory-on-the-relevant-node +++ a/kernel/kcov.c @@ -1034,8 +1034,8 @@ static int __init kcov_init(void) int cpu; for_each_possible_cpu(cpu) { - void *area = vmalloc(CONFIG_KCOV_IRQ_AREA_SIZE * - sizeof(unsigned long)); + void *area = vmalloc_node(CONFIG_KCOV_IRQ_AREA_SIZE * + sizeof(unsigned long), cpu_to_node(cpu)); if (!area) return -ENOMEM; per_cpu_ptr(&kcov_percpu_data, cpu)->irq_area = area; _ Patches currently in -mm which might be from bigeasy@xxxxxxxxxxxxx are mm-disable-zsmalloc-on-preempt_rt.patch documentation-kcov-include-typesh-in-the-example.patch documentation-kcov-define-ip-in-the-example.patch kcov-allocate-per-cpu-memory-on-the-relevant-node.patch kcov-avoid-enabledisable-interrupts-if-in_task.patch kcov-replace-local_irq_save-with-a-local_lock_t.patch