git: dc11af08a498 - main - loader.efi: tss_pa setup seems to be flawed in trap.c
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 21 Feb 2026 08:56:24 UTC
The branch main has been updated by tsoome:
URL: https://cgit.FreeBSD.org/src/commit/?id=dc11af08a4983237a90c3500ecf500ed41b0802b
commit dc11af08a4983237a90c3500ecf500ed41b0802b
Author: Toomas Soome <tsoome@FreeBSD.org>
AuthorDate: 2026-02-21 08:49:34 +0000
Commit: Toomas Soome <tsoome@FreeBSD.org>
CommitDate: 2026-02-21 08:49:34 +0000
loader.efi: tss_pa setup seems to be flawed in trap.c
since sd_lobase is 24 bits, we would need to shift 24 bits, not 16.
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D55178
---
stand/efi/loader/arch/amd64/trap.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/stand/efi/loader/arch/amd64/trap.c b/stand/efi/loader/arch/amd64/trap.c
index 671321be3628..97e78ecccf22 100644
--- a/stand/efi/loader/arch/amd64/trap.c
+++ b/stand/efi/loader/arch/amd64/trap.c
@@ -329,7 +329,7 @@ efi_redirect_exceptions(void)
free_tables();
return (0);
}
- tss_pa = tss_desc->sd_lobase + (tss_desc->sd_hibase << 16);
+ tss_pa = tss_desc->sd_lobase + (tss_desc->sd_hibase << 24);
tss = (struct amd64tss *)tss_pa;
tss_desc->sd_type = SDT_SYSTSS; /* unbusy */
}