From 23605a8e5124dcbd27aa3a8bfbca20ee2b179361 Mon Sep 17 00:00:00 2001 From: Toomas Soome Date: Sat, 21 Feb 2026 17:27:35 +0200 Subject: [PATCH] loader.efi: efi_redirect_exceptions does use uninitialized pointer loader_idt.rd_base is not set when we are attempting to bcopy(), resulting to data stored to page 0 and therefore corrupting it. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55180 --- stand/efi/loader/arch/amd64/trap.c | 1 + 1 file changed, 1 insertion(+) diff --git a/stand/efi/loader/arch/amd64/trap.c b/stand/efi/loader/arch/amd64/trap.c index ffd84db40a3..3fe86f7b192 100644 --- a/stand/efi/loader/arch/amd64/trap.c +++ b/stand/efi/loader/arch/amd64/trap.c @@ -266,6 +266,7 @@ efi_redirect_exceptions(void) return (0); } loader_idt.rd_limit = fw_idt.rd_limit; + loader_idt.rd_base = lidt_pa; bcopy((void *)fw_idt.rd_base, (void *)loader_idt.rd_base, loader_idt.rd_limit); bzero(ist_use_table, sizeof(ist_use_table));