diff options
author | Ashok Raj <ashok.raj@intel.com> | 2006-03-25 03:06:50 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-25 08:22:50 -0800 |
commit | d3f4aaa3d7b4152dac28751ee902f769d03289a1 (patch) | |
tree | 66c5313a705a5169b2c5cc12b703489c39b8ee52 | |
parent | f5335c0f1bcba16907972b66b905f62402433e23 (diff) |
[PATCH] x86: make CONFIG_HOTPLUG_CPU depend on !X86_PC
Make CONFIG_HOTPLUG_CPU depend on !X86_PC, so we need to turn on either
CONFIG_GENERICARCH, CONFIG_BIGSMP or any other subarch except X86_PC when
CONFIG_HOTPLUG_CPU=y
With 2.6.15+ kernels when CONFIG_HOTPLUG_CPU is turned on we switch to
bigsmp mode for sending IPI's and ioapic configurations that caused the
following error message.
>> More than 8 CPUs detected and CONFIG_X86_PC cannot handle it.
>> Use CONFIG_X86_GENERICARCH or CONFIG_X86_BIGSMP.
Originally bigsmp was added just to handle >8 cpus, but now with hotplug
cpu support we need to use bigsmp mode (why? see below), that cause the
above error message even if there were less than 8 cpus in the system.
The message is bogus, but we are cannot use logical flat mode due to issues
with broadcast IPI can confuse a CPU just comming up. We use flat physical
mode just like x86_64 case. More details on why bigsmp now uses flat
physical mode (vs. cluster mode) in following link.
http://marc.theaimsgroup.com/?l=linux-kernel&m=113261865814107&w=2
Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | arch/i386/Kconfig | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/i386/Kconfig b/arch/i386/Kconfig index bfea1bedcbf..b008fb0cd7b 100644 --- a/arch/i386/Kconfig +++ b/arch/i386/Kconfig @@ -737,7 +737,7 @@ config PHYSICAL_START config HOTPLUG_CPU bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" - depends on SMP && HOTPLUG && EXPERIMENTAL && !X86_VOYAGER + depends on SMP && HOTPLUG && EXPERIMENTAL && !X86_VOYAGER && !X86_PC ---help--- Say Y here to experiment with turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu. |