Messages in this thread Patch in this message | | | From | Jacob Pan <> | Subject | [PATCH 8/8] x86/mrst: Add nop functions to x86_init mpparse functions | Date | Fri, 7 May 2010 10:41:48 -0700 |
| |
Moorestown does not have BIOS provided MP tables, we can save some time by avoiding scaning of these tables. e.g. [ 0.000000] Scan SMP from c0000000 for 1024 bytes. [ 0.000000] Scan SMP from c009fc00 for 1024 bytes. [ 0.000000] Scan SMP from c00f0000 for 65536 bytes. [ 0.000000] Scan SMP from c00bfff0 for 1024 bytes.
Searching EBDA with the base at 0x40E will also result in random pointer deferencing within 1MB. This can be a problem in Lincroft if the pointer hits VGA area and VGA mode is not enabled.
Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com> --- arch/x86/kernel/mrst.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/arch/x86/kernel/mrst.c b/arch/x86/kernel/mrst.c index 0b3ef9f..73c1692 100644 --- a/arch/x86/kernel/mrst.c +++ b/arch/x86/kernel/mrst.c @@ -351,5 +351,9 @@ void __init x86_mrst_early_setup(void) legacy_pic = &null_legacy_pic; + /* Avoid searching for BIOS MP tables */ + x86_init.mpparse.find_smp_config = x86_init_noop; + x86_init.mpparse.get_smp_config = x86_init_uint_noop; + mrst_identify_cpu(); } -- 1.6.3.3
| |