[PATCH 5.16 075/203] riscv: cpu-hotplug: clear cpu from numa map when teardown

From: Greg Kroah-Hartman
Date: Mon Feb 14 2022 - 05:30:22 EST


From: Pingfan Liu <kernelfans@xxxxxxxxx>

commit f40fe31c01445f31253b15bef2412b33ae31093b upstream.

There is numa_add_cpu() when cpus online, accordingly, there should be
numa_remove_cpu() when cpus offline.

Signed-off-by: Pingfan Liu <kernelfans@xxxxxxxxx>
Fixes: 4f0e8eef772e ("riscv: Add numa support for riscv64 platform")
Cc: stable@xxxxxxxxxxxxxxx
[Palmer: Add missing NUMA include]
Signed-off-by: Palmer Dabbelt <palmer@xxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
arch/riscv/kernel/cpu-hotplug.c | 2 ++
1 file changed, 2 insertions(+)

--- a/arch/riscv/kernel/cpu-hotplug.c
+++ b/arch/riscv/kernel/cpu-hotplug.c
@@ -12,6 +12,7 @@
#include <linux/sched/hotplug.h>
#include <asm/irq.h>
#include <asm/cpu_ops.h>
+#include <asm/numa.h>
#include <asm/sbi.h>

void cpu_stop(void);
@@ -46,6 +47,7 @@ int __cpu_disable(void)
return ret;

remove_cpu_topology(cpu);
+ numa_remove_cpu(cpu);
set_cpu_online(cpu, false);
irq_migrate_all_off_this_cpu();