瀏覽代碼

xen: make earlyprintk=xen work again

For some perverse reason, if you call add_preferred_console() it prevents
setup_early_printk() from successfully enabling the boot console -
unless you make it a preferred console too...

Also, make xenboot console output distinct from normal console output,
since it gets repeated when the console handover happens, and the
duplicated output is confusing without disambiguation.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Markus Armbruster <armbru@redhat.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Jeremy Fitzhardinge 17 年之前
父節點
當前提交
83abc70a4c
共有 2 個文件被更改,包括 2 次插入0 次删除
  1. 1 0
      arch/x86/xen/enlighten.c
  2. 1 0
      drivers/char/hvc_xen.c

+ 1 - 0
arch/x86/xen/enlighten.c

@@ -1257,6 +1257,7 @@ asmlinkage void __init xen_start_kernel(void)
 	boot_params.hdr.ramdisk_size = xen_start_info->mod_len;
 
 	if (!is_initial_xendomain()) {
+		add_preferred_console("xenboot", 0, NULL);
 		add_preferred_console("tty", 0, NULL);
 		add_preferred_console("hvc", 0, NULL);
 	}

+ 1 - 0
drivers/char/hvc_xen.c

@@ -155,6 +155,7 @@ static void xenboot_write_console(struct console *console, const char *string,
 
 	raw_console_write(string, len);
 
+	write_console(0, "(early) ", 8);
 	while (off < len && NULL != (pos = strchr(string+off, '\n'))) {
 		linelen = pos-string+off;
 		if (off + linelen > len)