On Sun, Dec 16, 2012 at 1:43 PM, H. Peter Anvin <[email protected]> wrote: > On 12/16/2012 09:59 AM, Yinghai Lu wrote: >>> diff --git a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c >>> index 037df57..a512f56 100644 >>> --- a/arch/x86/kernel/head64.c >>> +++ b/arch/x86/kernel/head64.c >>> @@ -25,6 +25,7 @@ >>> #include <asm/kdebug.h> >>> #include <asm/e820.h> >>> #include <asm/bios_ebda.h> >>> +#include <asm/microcode.h> >>> >>> static void __init zap_identity_mappings(void) >>> { >>> @@ -73,6 +74,11 @@ void __init x86_64_start_kernel(char * real_mode_data) >>> /* clear bss before set_intr_gate with early_idt_handler */ >>> clear_bss(); >>> >>> + /* >>> + * Load microcode early on BSP. >>> + */ >>> + load_ucode_bsp(real_mode_data); >>> + >>> /* Make NULL pointers segfault */ >>> zap_identity_mappings(); >>> >> >> So this patchset is after #PF handler set early page table version? >> >> then load_ucode_bsp() should be after >> >> load_idt((const struct desc_ptr *)&idt_descr); >> > > This patchset isn't before the #PF handler version (you can tell because > it has zap_identity_mappings()), but it does make sense to load the IDT > first.
it has to be rebased after #PF handler version. otherwise it can not handle for framdisk that is loaded after 1G. Fenghua, can you post your boot log with 64bit with your patch? Yinghai -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

