Commit f8ac6343 authored by Daniel J Blueman's avatar Daniel J Blueman Committed by Sasha Levin

x86: numachip: Fix 16-bit APIC ID truncation

[ Upstream commit 00e7977d ]

Prevent 16-bit APIC IDs being truncated by using correct mask. This fixes
booting large systems, where the wrong core would receive the startup and
init IPIs, causing hanging.
Signed-off-by: default avatarDaniel J Blueman <daniel@numascale.com>
Cc: Steffen Persvold <sp@numascale.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Link: http://lkml.kernel.org/r/1415089784-28779-1-git-send-email-daniel@numascale.comSigned-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarSasha Levin <sasha.levin@oracle.com>
parent ad927769
...@@ -40,7 +40,7 @@ static unsigned int get_apic_id(unsigned long x) ...@@ -40,7 +40,7 @@ static unsigned int get_apic_id(unsigned long x)
unsigned int id; unsigned int id;
rdmsrl(MSR_FAM10H_NODE_ID, value); rdmsrl(MSR_FAM10H_NODE_ID, value);
id = ((x >> 24) & 0xffU) | ((value << 2) & 0x3f00U); id = ((x >> 24) & 0xffU) | ((value << 2) & 0xff00U);
return id; return id;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment