As setup_earlyprintk passed to the early_param, it will be usable only after
'parse_early_param' function will be called from the 'setup_arch'. So we have
earlyprintk during early boot and decompression. Next point after decompression
of the kernel where we can use early_printk is after call of the
'parse_early_param'.

This patch removes 'earlyprintk' from the early_param and setup it right after
boot data copying. So 'early_printk' function will be usabable after
decompression of kernel and before parse_early_param will be called.

Kernel with this patch was tested with qemu-i386. early_printk function works
after early_printk initialization. This patch also tested and works with enabled
CONFIG_CMDLINE_BOOL and CONFIG_CMDLINE_OVERRIDE.

Changes v1->v2:

* Call of the setup_early_printk moved to the top of the i386_start_kernel

Signed-off-by: Alexander Kuleshov <[email protected]>
---
 arch/x86/kernel/head32.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/x86/kernel/head32.c b/arch/x86/kernel/head32.c
index 2911ef3..cd8527c 100644
--- a/arch/x86/kernel/head32.c
+++ b/arch/x86/kernel/head32.c
@@ -31,6 +31,9 @@ static void __init i386_default_early_setup(void)
 
 asmlinkage __visible void __init i386_start_kernel(void)
 {
+       /* setup earlyprintk as early as possible */
+       setup_early_printk(boot_command_line);
+
        cr4_init_shadow();
        sanitize_boot_params(&boot_params);
 
-- 
2.3.3.611.g09038fc.dirty

--
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/

Reply via email to