Page MenuHomeFreeBSD

D21437.id61809.diff
No OneTemporary

D21437.id61809.diff

Index: sys/riscv/riscv/locore.S
===================================================================
--- sys/riscv/riscv/locore.S
+++ sys/riscv/riscv/locore.S
@@ -69,12 +69,18 @@
la t0, hart_lottery
li t1, 1
amoadd.w t0, t1, 0(t0)
- bnez t0, mpentry
/*
- * Page tables
+ * We must jump to mpentry in the non-BSP case because the offset is
+ * too large to fit in a 12-bit branch immediate.
*/
+ beqz t0, 1f
+ j mpentry
+ /*
+ * Page tables
+ */
+1:
/* Add L1 entry for kernel */
la s1, pagetable_l1
la s2, pagetable_l2 /* Link to next level PN */

File Metadata

Mime Type
text/plain
Expires
Thu, Aug 6, 10:37 PM (10 h, 16 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
36136525
Default Alt Text
D21437.id61809.diff (572 B)

Event Timeline