git: 787259bfe564 - main - amd64 pmap: flush whole TLB after LA57 trampoline is installed

From: Konstantin Belousov <kib_at_FreeBSD.org>
Date: Mon, 16 Sep 2024 08:15:03 UTC
The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=787259bfe56478b9aa0699f2516d00722b9cc309

commit 787259bfe56478b9aa0699f2516d00722b9cc309
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2021-11-06 06:11:57 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-09-16 08:08:53 +0000

    amd64 pmap: flush whole TLB after LA57 trampoline is installed
    
    Sponsored by:   Advanced Micro Devices (AMD)
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
---
 sys/amd64/amd64/pmap.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c
index 568301344e86..b513c0c9c957 100644
--- a/sys/amd64/amd64/pmap.c
+++ b/sys/amd64/amd64/pmap.c
@@ -2245,7 +2245,7 @@ pmap_bootstrap_la57(void *arg __unused)
 	*(u_long *)(v_code + 2 + (la57_trampoline_gdt_desc - la57_trampoline)) =
 	    la57_trampoline_gdt - la57_trampoline + VM_PAGE_TO_PHYS(m_code);
 	la57_tramp = (void (*)(uint64_t))VM_PAGE_TO_PHYS(m_code);
-	invlpg((vm_offset_t)la57_tramp);
+	pmap_invalidate_all(kernel_pmap);
 	if (bootverbose) {
 		printf("entering LA57 trampoline at %#lx\n",
 		    (vm_offset_t)la57_tramp);