Re: [PATCH -v4] x86: Setup early console as early as possible inx86_start_kernel()

From: Yinghai Lu
Date: Mon Oct 11 2010 - 15:28:16 EST


On 10/11/2010 11:37 AM, H. Peter Anvin wrote:
> On 10/11/2010 10:58 AM, Yinghai Lu wrote:
>>
>> #ifdef CONFIG_X86_TRAMPOLINE
>> Index: linux-2.6/arch/x86/kernel/head64.c
>> ===================================================================
>> --- linux-2.6.orig/arch/x86/kernel/head64.c
>> +++ linux-2.6/arch/x86/kernel/head64.c
>> @@ -74,6 +74,10 @@ void __init x86_64_start_kernel(char * r
>> /* clear bss before set_intr_gate with early_idt_handler */
>> clear_bss();
>>
>> + /* boot_params is in bss */
>> + copy_bootdata(__va(real_mode_data));
>> + setup_early_console();
>> +
>> /* Make NULL pointers segfault */
>> zap_identity_mappings();
>>
>> @@ -97,7 +101,14 @@ void __init x86_64_start_kernel(char * r
>>
>> void __init x86_64_start_reservations(char *real_mode_data)
>> {
>> - copy_bootdata(__va(real_mode_data));
>> + /*
>> + * hdr.version is always not 0, so check it to see
>> + * if boot_params is copied or not.
>> + */
>> + if (!boot_params.hdr.version) {
>> + copy_bootdata(__va(real_mode_data));
>> + setup_early_console();
>> + }
>>
>> memblock_init();
>>
>
> Under what conditions would we *not* have gotten through
> x86_64_start_kernel()?

xen will go with x86_64_start_reservations() directly.

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/