git: f6ec18e200ab - main - amd64 vm.pmap.kernel_maps: provide canonical address switch for la57
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 22 Jul 2025 14:03:08 UTC
The branch main has been updated by kib:
URL: https://cgit.FreeBSD.org/src/commit/?id=f6ec18e200ab323d50ec8d051bda8f22f4beaf69
commit f6ec18e200ab323d50ec8d051bda8f22f4beaf69
Author: Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2025-07-20 13:24:11 +0000
Commit: Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2025-07-22 13:59:10 +0000
amd64 vm.pmap.kernel_maps: provide canonical address switch for la57
Reviewed by: markj
Sponsored by: The FreeBSD Foundation
Differential revision: https://reviews.freebsd.org/D51453
---
sys/amd64/amd64/pmap.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c
index 9805184bd07e..6fac8318df05 100644
--- a/sys/amd64/amd64/pmap.c
+++ b/sys/amd64/amd64/pmap.c
@@ -12042,8 +12042,13 @@ sysctl_kmaps(SYSCTL_HANDLER_ARGS)
}
/* Convert to canonical form. */
- if (sva == 1ul << 47)
- sva |= -1ul << 48;
+ if (la57) {
+ if (sva == 1ul << 56)
+ sva |= -1ul << 57;
+ } else {
+ if (sva == 1ul << 47)
+ sva |= -1ul << 48;
+ }
restart:
pml4e = kernel_pml4[i];