aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey Starikovskiy <astarikovskiy@suse.de>2008-03-17 15:08:24 -0400
committerIngo Molnar <mingo@elte.hu>2008-04-17 11:41:05 -0400
commit85e46035bec6f114ad07ce8a9c70388568b1afd4 (patch)
tree0ee972c2f79f4ca3ce7a5a56cba5394d05d934a5
parentce3fe6b2bfded4f5d931c5f2f9325dc2e3fd3a74 (diff)
x86: limit scan to 1k of EBDA.
Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/mpparse_64.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/x86/kernel/mpparse_64.c b/arch/x86/kernel/mpparse_64.c
index fb74135f9d0e..19c826485516 100644
--- a/arch/x86/kernel/mpparse_64.c
+++ b/arch/x86/kernel/mpparse_64.c
@@ -640,11 +640,13 @@ static void __init __find_smp_config(unsigned reserve)
640 * trustworthy, simply because the SMP table may have been 640 * trustworthy, simply because the SMP table may have been
641 * stomped on during early boot. These loaders are buggy and 641 * stomped on during early boot. These loaders are buggy and
642 * should be fixed. 642 * should be fixed.
643 *
644 * MP1.4 SPEC states to only scan first 1K of 4K EBDA.
643 */ 645 */
644 646
645 address = get_bios_ebda(); 647 address = get_bios_ebda();
646 if (address) 648 if (address)
647 smp_scan_config(address, 0x1000, reserve); 649 smp_scan_config(address, 0x400, reserve);
648} 650}
649 651
650void __init early_find_smp_config(void) 652void __init early_find_smp_config(void)