diff options
Diffstat (limited to 'kernel/vmm.rv')
| -rw-r--r-- | kernel/vmm.rv | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/kernel/vmm.rv b/kernel/vmm.rv index d6673b3..ece5682 100644 --- a/kernel/vmm.rv +++ b/kernel/vmm.rv @@ -1,12 +1,12 @@ -# build the 4-level page tables for one user page -# everything here only writes small entries we construct, so it's f64-safe +# build the 4 level page tables for one user page +# everything here only writes small entries we construct, so its f64 safe const PTE_ADDR = 0x000FFFFFFFFFF000 fn pte_idx(virt, level) (virt shr (12 + 9 * level)) band 0x1ff -# next-level table phys under entry `i` of table `tbl`, creating it if absent -fn next_table(tbl, i) do - const slot = tbl + i * 8 +# next level table phys under entry `index` of table `table`, creating it if absent +fn next_table(table, index) do + const slot = table + index * 8 const entry = mem_read(slot, 8) if (entry band 1) != 0 return entry band PTE_ADDR const frame = frame_alloc() |
