aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYinghai Lu <yinghai@kernel.org>2009-09-19 14:07:57 -0400
committerIngo Molnar <mingo@elte.hu>2009-09-19 14:31:33 -0400
commiteda6da9286ad5b35b1eb70f6368958a8ee41a9dd (patch)
treecbf0a1dda9c9bcf77a1a02170bd67db703129bc2
parenta017421ddcdf34474f1133b27e33ab2ca6c19b96 (diff)
Revert 'x86: Fix system crash when loading with "reservetop" parameter'
After close looking, commit 8126dec3 will break: 1. some cpu feature in early stage too, like cpu_has_x2apic 2. will break built-in-command line 3. will break other memmap= and mem= 4. early_dbgp and early_console that will use early_ioremap to access mmio (?) So revert it. Reported-by: Hugh Dickins <hugh.dickins@tiscali.co.uk>, Cc: Linus Torvalds <torvalds@linux-foundation.org>, Cc: Andrew Morton <akpm@linux-foundation.org>, LKML-Reference: <4AB51DFD.2000904@kernel.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/setup.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 19f15c4076fb..f5baa2ae0c87 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -712,21 +712,6 @@ void __init setup_arch(char **cmdline_p)
712 printk(KERN_INFO "Command line: %s\n", boot_command_line); 712 printk(KERN_INFO "Command line: %s\n", boot_command_line);
713#endif 713#endif
714 714
715 strlcpy(command_line, boot_command_line, COMMAND_LINE_SIZE);
716 *cmdline_p = command_line;
717
718#ifdef CONFIG_X86_64
719 /*
720 * Must call this twice: Once just to detect whether hardware doesn't
721 * support NX (so that the early EHCI debug console setup can safely
722 * call set_fixmap(), and then again after parsing early parameters to
723 * honor the respective command line option.
724 */
725 check_efer();
726#endif
727
728 parse_early_param();
729
730 /* VMI may relocate the fixmap; do this before touching ioremap area */ 715 /* VMI may relocate the fixmap; do this before touching ioremap area */
731 vmi_init(); 716 vmi_init();
732 717
@@ -809,6 +794,21 @@ void __init setup_arch(char **cmdline_p)
809#endif 794#endif
810#endif 795#endif
811 796
797 strlcpy(command_line, boot_command_line, COMMAND_LINE_SIZE);
798 *cmdline_p = command_line;
799
800#ifdef CONFIG_X86_64
801 /*
802 * Must call this twice: Once just to detect whether hardware doesn't
803 * support NX (so that the early EHCI debug console setup can safely
804 * call set_fixmap(), and then again after parsing early parameters to
805 * honor the respective command line option.
806 */
807 check_efer();
808#endif
809
810 parse_early_param();
811
812#ifdef CONFIG_X86_64 812#ifdef CONFIG_X86_64
813 check_efer(); 813 check_efer();
814#endif 814#endif