Re: [PATCH v3 08/10] x86/head64.c: Early update ucode in 64-bit

From: Yinghai Lu
Date: Sun Dec 16 2012 - 18:35:35 EST


On Sun, Dec 16, 2012 at 1:43 PM, H. Peter Anvin <hpa@xxxxxxxxx> 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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/