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

Reply via email to