PVH guests skip real mode VGA detection, and never have a VGA available, hence
the default VGA selection is not applicable, and at worse can cause confusion
when parsing Xen boot log.
Zero the boot_vid_info structure when Xen is booted from the PVH entry point.
This fixes Xen incorrectly reporting:
(XEN) Video information:
(XEN) VGA is text mode 80x25, font 8x16
When booted as a PVH guest.
Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
} vesapm;
uint16_t vesa_attrib; /* 0x28 */
};
+
+extern struct boot_video_info boot_vid_info;
#endif /* __ASSEMBLY__ */
#endif /* __BOOT_VIDEO_H__ */
#include <public/arch-x86/hvm/start_info.h>
+#ifdef CONFIG_VIDEO
+# include "../../boot/video.h"
+#endif
+
/* Initialised in head.S, before .bss is zeroed. */
bool __initdata pvh_boot;
uint32_t __initdata pvh_start_info_pa;
ASSERT(xen_guest);
get_memory_map();
+
+#ifdef CONFIG_VIDEO
+ /* No VGA available when booted from the PVH entry point. */
+ memset(&bootsym(boot_vid_info), 0, sizeof(boot_vid_info));
+#endif
}
void __init pvh_print_info(void)
#ifdef CONFIG_VIDEO
# include "boot/video.h"
-extern struct boot_video_info boot_vid_info;
#endif
static void __init parse_video_info(void)