The branch main has been updated by mhorne:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=0e4e77072f65df71644140e41229b868a73f3371

commit 0e4e77072f65df71644140e41229b868a73f3371
Author:     Mitchell Horne <mho...@freebsd.org>
AuthorDate: 2024-06-14 17:57:28 +0000
Commit:     Mitchell Horne <mho...@freebsd.org>
CommitDate: 2024-06-14 18:02:05 +0000

    riscv: adjust physmem reservation
    
    Make sure we do this BEFORE pmap_bootstrap().
    
    Reviewed by:    markj, jhb
    MFC after:      3 days
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D45325
---
 sys/riscv/riscv/machdep.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/sys/riscv/riscv/machdep.c b/sys/riscv/riscv/machdep.c
index f44056f56212..1e2b96acd3a1 100644
--- a/sys/riscv/riscv/machdep.c
+++ b/sys/riscv/riscv/machdep.c
@@ -549,10 +549,6 @@ initriscv(struct riscv_bootparams *rvbp)
 
        cache_setup();
 
-       /* Bootstrap enough of pmap to enter the kernel proper */
-       kernlen = (lastaddr - KERNBASE);
-       pmap_bootstrap(rvbp->kern_l1pt, rvbp->kern_phys, kernlen);
-
 #ifdef FDT
        /*
         * XXX: Unconditionally exclude the lowest 2MB of physical memory, as
@@ -565,6 +561,11 @@ initriscv(struct riscv_bootparams *rvbp)
        physmem_exclude_region(mem_regions[0].mr_start, L2_SIZE,
            EXFLAG_NODUMP | EXFLAG_NOALLOC);
 #endif
+
+       /* Bootstrap enough of pmap to enter the kernel proper */
+       kernlen = (lastaddr - KERNBASE);
+       pmap_bootstrap(rvbp->kern_l1pt, rvbp->kern_phys, kernlen);
+
        physmem_init_kernel_globals();
 
        /* Establish static device mappings */

Reply via email to