Index: paravirt-2.6.20-rc4-hg699/arch/i386/kernel/setup.c =================================================================== --- paravirt-2.6.20-rc4-hg699.orig/arch/i386/kernel/setup.c +++ paravirt-2.6.20-rc4-hg699/arch/i386/kernel/setup.c @@ -61,6 +61,7 @@ #include #include #include +#include #include #include @@ -651,12 +652,17 @@ void __init setup_arch(char **cmdline_p) e820_register_memory(); #ifdef CONFIG_VT -#if defined(CONFIG_VGA_CONSOLE) - if (!efi_enabled || (efi_mem_type(0xa0000) != EFI_CONVENTIONAL_MEMORY)) - conswitchp = &vga_con; -#elif defined(CONFIG_DUMMY_CONSOLE) +#if defined(CONFIG_DUMMY_CONSOLE) conswitchp = &dummy_con; #endif +#if defined(CONFIG_VGA_CONSOLE) + if (efi_enabled && (efi_mem_type(0xa0000) == EFI_CONVENTIONAL_MEMORY)) + goto novga; + if (is_running_on_xen() && !is_initial_xendomain()) + goto novga; + conswitchp = &vga_con; +novga: +#endif #endif tsc_init(); }