From: Jack Steiner <steiner@sgi.com>
Date: Mon, 16 Jun 2008 17:09:10 +0000 (-0500)
Subject: x86: increase MAX_APICS for very large x86-64 configs
X-Git-Tag: v2.6.27-rc1~1106^2~244^2~2
X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=ab9c0bb8a8c1d71dd303abdaa61ec496128e2fbe;p=linux-2.6-omap-h63xx.git

x86: increase MAX_APICS for very large x86-64 configs

Increase the maximum number of apics when running very large
configurations. This patch has no affect on most systems.

The patch has no effect on any 32-bit kernel. It adds ~4k to the size
of 64-bit kernels but only if NR_CPUS > 255.

Signed-off-by: Jack Steiner <steiner@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---

diff --git a/include/asm-x86/mpspec_def.h b/include/asm-x86/mpspec_def.h
index dc6ef85e362..38d1e73b49e 100644
--- a/include/asm-x86/mpspec_def.h
+++ b/include/asm-x86/mpspec_def.h
@@ -17,10 +17,11 @@
 # define MAX_MPC_ENTRY 1024
 # define MAX_APICS      256
 #else
-/*
- * A maximum of 255 APICs with the current APIC ID architecture.
- */
-# define MAX_APICS 255
+# if NR_CPUS <= 255
+#  define MAX_APICS     255
+# else
+#  define MAX_APICS   32768
+# endif
 #endif
 
 struct intel_mp_floating {