diff options
author | Jon Santmyer <jon@jonsantmyer.com> | 2025-09-10 13:28:28 -0400 |
---|---|---|
committer | Jon Santmyer <jon@jonsantmyer.com> | 2025-09-10 13:28:28 -0400 |
commit | 7f350e7ee1c2c38e5ac0b6c22c17388f6c78f0b5 (patch) | |
tree | aef9904e2495ce840319f2815cd859c47294c88a /include/arch/x86_64/page-mapping.h | |
parent | 032a7bc4d79efea100a00cf3464bea3249a07ff6 (diff) | |
download | jove-kernel-7f350e7ee1c2c38e5ac0b6c22c17388f6c78f0b5.tar.gz jove-kernel-7f350e7ee1c2c38e5ac0b6c22c17388f6c78f0b5.tar.bz2 jove-kernel-7f350e7ee1c2c38e5ac0b6c22c17388f6c78f0b5.zip |
refactor paging code. regression on loading init program
Diffstat (limited to 'include/arch/x86_64/page-mapping.h')
-rw-r--r-- | include/arch/x86_64/page-mapping.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/include/arch/x86_64/page-mapping.h b/include/arch/x86_64/page-mapping.h index fd620ea..8389132 100644 --- a/include/arch/x86_64/page-mapping.h +++ b/include/arch/x86_64/page-mapping.h @@ -3,13 +3,19 @@ #include "arch/x86_64/page.h" -pmle_t *page_mapping_traverse(pmle_t *pml4, uint8_t depth, uint16_t *path); +pmle_t *pml4_traverse(pmle_t *pml4, uint8_t depth, uint16_t *path); /**@FUNC Get the pmle associated with this virtual address down to a given depth. * At depth=0, gets &pml4[pml4i] * At depth=1, gets &pml4[pml4i][pml3i] * At depth=2, gets &pml4[pml4i][pml3i][pml2i] - * etc...*/ -pmle_t *mem_mapping_vptr_mapping(pmle_t *pml4, uint8_t depth, uintptr_t vptr); + * etc... + * @PARAM pml4 table to get mapping from. + * @PARAM depth how deep to traverse for the mapping. + * @PARAM vptr address to get mapping for. + * @RETURN pointer to pmle (if exists)*/ +pmle_t *pml4_get_mapping(pmle_t *pml4, uint8_t depth, uintptr_t vptr); + +int pml4_try_map(pmle_t *pml4, uintptr_t pptr, uintptr_t vptr); #endif |