From 8a44c61b2d4b04d28a6124bc71f5526aad100177 Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Tue, 30 Jun 2026 15:01:18 +0200 Subject: [PATCH] x86/boot: don't blindly mark VGA in graphics mode on MB2 path MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Setting ->orig_video_isVGA to the specific marker should be done only when the VBE tag is present and the FRAMEBUFFER is either absent or indicates RGB type. Since the "video" variable now starts out non-NULL, this property was broken when in particular neither of the tags are present. To move back to at least close to original behavior, add a 2nd check to said conditional. Fixes: d5a73cdc6b90 ("x86/boot: Use boot_vid_info variable directly from C code") Reported-by: Marek Marczykowski-Górecki Signed-off-by: Jan Beulich Tested-by: Marek Marczykowski-Górecki Acked-by: Andrew Cooper Reviewed-by: Teddy Astie master commit: c7b742985499a5e99456456bac47a13b2987e550 master date: 2026-06-25 13:37:33 +0200 --- xen/arch/x86/boot/reloc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/x86/boot/reloc.c b/xen/arch/x86/boot/reloc.c index 7a375ad41c..2aa6ebb16b 100644 --- a/xen/arch/x86/boot/reloc.c +++ b/xen/arch/x86/boot/reloc.c @@ -339,7 +339,7 @@ static multiboot_info_t *mbi2_reloc(uint32_t mbi_in, memctx *ctx) end: #ifdef CONFIG_VIDEO - if ( video ) + if ( video && video->lfb_size ) video->orig_video_isVGA = 0x23; #endif