-
- Downloads
x86/smp: Don't ever patch back to UP if we unplug cpus
We still patch SMP instructions to UP variants if we boot with a single CPU, but not at any other time. In particular, not if we unplug CPUs to return to a single cpu. Paul McKenney points out: mean offline overhead is 6251/48=130.2 milliseconds. If I remove the alternatives_smp_switch() from the offline path [...] the mean offline overhead is 550/42=13.1 milliseconds Basically, we're never going to get those 120ms back, and the code is pretty messy. We get rid of: 1) The "smp-alt-once" boot option. It's actually "smp-alt-boot", the documentation is wrong. It's now the default. 2) The skip_smp_alternatives flag used by suspend. 3) arch_disable_nonboot_cpus_begin() and arch_disable_nonboot_cpus_end() which were only used to set this one flag. Signed-off-by:Rusty Russell <rusty@rustcorp.com.au> Cc: Paul McKenney <paul.mckenney@us.ibm.com> Cc: Suresh Siddha <suresh.b.siddha@intel.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/r/87vcgwwive.fsf@rustcorp.com.au Signed-off-by:
Ingo Molnar <mingo@kernel.org>
Showing
- Documentation/kernel-parameters.txt 0 additions, 3 deletionsDocumentation/kernel-parameters.txt
- arch/x86/include/asm/alternative.h 2 additions, 2 deletionsarch/x86/include/asm/alternative.h
- arch/x86/kernel/alternative.c 26 additions, 81 deletionsarch/x86/kernel/alternative.c
- arch/x86/kernel/smpboot.c 2 additions, 18 deletionsarch/x86/kernel/smpboot.c
- arch/x86/xen/smp.c 2 additions, 4 deletionsarch/x86/xen/smp.c
- kernel/cpu.c 0 additions, 11 deletionskernel/cpu.c
Loading
Please register or sign in to comment