Andrea Arcangeli | 16 Mar 2012 20:28
Picon
Favicon

[PATCH] numa_emulation fix

Hi,

basically without this various debug checks in AutoNUMA triggers and
the kernel crashes because a CPU can't belong to more than one node,
can it?

I've been using this fix for some time to develop in virt with fake
numa without problems (like real hardware).

Andrea Arcangeli (1):
  numa_emulation: fix cpumask_of_node()

 arch/x86/mm/numa_emulation.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Andrea Arcangeli | 16 Mar 2012 20:28
Picon
Favicon

[PATCH] numa_emulation: fix cpumask_of_node()

Without this fix the cpumask_of_node() for a fake=numa=2 is:

cpumask 0 ff
cpumask 1 ff

with the fix it's correct and it's set to:

cpumask 0 55
cpumask 1 aa

Signed-off-by: Andrea Arcangeli <aarcange <at> redhat.com>
---
 arch/x86/mm/numa_emulation.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/x86/mm/numa_emulation.c b/arch/x86/mm/numa_emulation.c
index 46db568..740b0a3 100644
--- a/arch/x86/mm/numa_emulation.c
+++ b/arch/x86/mm/numa_emulation.c
 <at>  <at>  -60,7 +60,7  <at>  <at>  static int __init emu_setup_memblk(struct numa_meminfo *ei,
 	eb->nid = nid;

 	if (emu_nid_to_phys[nid] == NUMA_NO_NODE)
-		emu_nid_to_phys[nid] = pb->nid;
+		emu_nid_to_phys[nid] = nid;

 	pb->start += size;
 	if (pb->start >= pb->end) {

Gmane