linux_dsm_epyc7002/arch
Andi Kleen 1584b89c92 [PATCH] x86_64: Validate SLIT table
A lot of Opteron BIOS just pass 10 in all SLIT entries (10 is the
normalized unit). This is actually worse than the default heuristic
because it leads to pci_distance not knowing the difference between
local and remote nodes anymore. This messes up some NUMA
heuristics in generic code.

In this case it's better to fall back to the default heuristic
which just does nodea == nodeb ? 10 : 20.

This patch does some basic sanity checking on the SLIT and only accepts
the SLIT when it passes.

Invariants enforced are:
- Node to itself shall be 10
- Any other distance shouldn't be 10
- Distances smaller than 10 are illegal

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-11 19:04:51 -08:00
..
alpha [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
arm [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
arm26 [PATCH] dump_thread() cleanup 2006-01-10 08:01:25 -08:00
cris [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
frv Merge ssh://master.kernel.org/pub/scm/linux/kernel/git/sam/kbuild 2006-01-10 08:21:33 -08:00
h8300 [PATCH] h8300: remove MAGIC_ROM_PTR from memory.c 2006-01-10 09:31:26 -08:00
i386 [PATCH] x86_64: Fix off by one in acpi table mapping 2006-01-11 19:04:51 -08:00
ia64 [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
m32r [PATCH] dump_thread() cleanup 2006-01-10 08:01:25 -08:00
m68k [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
m68knommu [PATCH] m68knommu: fix ram length of m5208evb board 2006-01-10 09:31:27 -08:00
mips [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
parisc [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
powerpc [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
ppc [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
s390 [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
sh [PATCH] dump_thread() cleanup 2006-01-10 08:01:25 -08:00
sh64 [PATCH] dump_thread() cleanup 2006-01-10 08:01:25 -08:00
sparc [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
sparc64 [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
um [PATCH] uml: kill an unused variable 2006-01-11 18:42:10 -08:00
v850 [PATCH] dump_thread() cleanup 2006-01-10 08:01:25 -08:00
x86_64 [PATCH] x86_64: Validate SLIT table 2006-01-11 19:04:51 -08:00
xtensa [PATCH] "tiny-make-id16-support-optional" fixes 2006-01-10 08:01:23 -08:00