[3.8.y.z extended stable] Patch "x86/amd/numa: Fix northbridge quirk to assign correct NUMA node" has been added to staging queue
Kamal Mostafa
kamal at canonical.com
Mon Mar 31 17:20:41 UTC 2014
This is a note to let you know that I have just added a patch titled
x86/amd/numa: Fix northbridge quirk to assign correct NUMA node
to the linux-3.8.y-queue branch of the 3.8.y.z extended stable tree
which can be found at:
http://kernel.ubuntu.com/git?p=ubuntu/linux.git;a=shortlog;h=refs/heads/linux-3.8.y-queue
This patch is scheduled to be released in version 3.8.13.21.
If you, or anyone else, feels it should not be added to this tree, please
reply to this email.
For more information about the 3.8.y.z tree, see
https://wiki.ubuntu.com/Kernel/Dev/ExtendedStable
Thanks.
-Kamal
------
>From cfa88018c41c0d16ae4cdd50503c4c94235b5a7b Mon Sep 17 00:00:00 2001
From: Daniel J Blueman <daniel at numascale.com>
Date: Thu, 13 Mar 2014 19:43:01 +0800
Subject: x86/amd/numa: Fix northbridge quirk to assign correct NUMA node
commit 847d7970defb45540735b3fb4e88471c27cacd85 upstream.
For systems with multiple servers and routed fabric, all
northbridges get assigned to the first server. Fix this by also
using the node reported from the PCI bus. For single-fabric
systems, the northbriges are on PCI bus 0 by definition, which
are on NUMA node 0 by definition, so this is invarient on most
systems.
Tested on fam10h and fam15h single and multi-fabric systems and
candidate for stable.
Signed-off-by: Daniel J Blueman <daniel at numascale.com>
Acked-by: Steffen Persvold <sp at numascale.com>
Acked-by: Borislav Petkov <bp at suse.de>
Link: http://lkml.kernel.org/r/1394710981-3596-1-git-send-email-daniel@numascale.com
Signed-off-by: Ingo Molnar <mingo at kernel.org>
Signed-off-by: Kamal Mostafa <kamal at canonical.com>
---
arch/x86/kernel/quirks.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/kernel/quirks.c b/arch/x86/kernel/quirks.c
index 26ee48a..b9ef5d9 100644
--- a/arch/x86/kernel/quirks.c
+++ b/arch/x86/kernel/quirks.c
@@ -525,7 +525,7 @@ static void quirk_amd_nb_node(struct pci_dev *dev)
return;
pci_read_config_dword(nb_ht, 0x60, &val);
- node = val & 7;
+ node = pcibus_to_node(dev->bus) | (val & 7);
/*
* Some hardware may return an invalid node ID,
* so check it first:
--
1.8.3.2
More information about the kernel-team
mailing list