Hi Wei,
On 11/08/2021 11:23, Wei Chen wrote:
Only Arm64 supports NUMA, the CONFIG_NUMA could not be
enabled for Arm32.
What do you mean by "could not be enabled"?
Even in Arm64, users still can disable
the CONFIG_NUMA through Kconfig option. In this case, keep
current fake NUMA API, will make Arm code still can work
with NUMA aware memory allocation and scheduler.
Signed-off-by: Wei Chen <wei.c...@arm.com>
---
xen/include/asm-arm/numa.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/xen/include/asm-arm/numa.h b/xen/include/asm-arm/numa.h
index 31a6de4e23..ab9c4a2448 100644
--- a/xen/include/asm-arm/numa.h
+++ b/xen/include/asm-arm/numa.h
@@ -5,6 +5,8 @@
typedef u8 nodeid_t;
+#if !defined(CONFIG_NUMA)
NIT: We tend to use #ifndef rather than #if !defined(...)
+
/* Fake one node for now. See also node_online_map. */
#define cpu_to_node(cpu) 0
#define node_to_cpumask(node) (cpu_online_map)
@@ -25,6 +27,8 @@ extern mfn_t first_valid_mfn;
#define node_start_pfn(nid) (mfn_x(first_valid_mfn))
#define __node_distance(a, b) (20)
+#endif
+
#endif /* __ARCH_ARM_NUMA_H */
/*
* Local variables:
Cheers,
--
Julien Grall