summaryrefslogtreecommitdiffstats
path: root/hal/memory.h
diff options
context:
space:
mode:
Diffstat (limited to 'hal/memory.h')
-rw-r--r--hal/memory.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/hal/memory.h b/hal/memory.h
index a8fdc86..2af275b 100644
--- a/hal/memory.h
+++ b/hal/memory.h
@@ -8,8 +8,6 @@
#include <stdbool.h>
#include <stdatomic.h>
-typedef uintptr_t physaddr_t;
-typedef uintptr_t virtaddr_t;
typedef unsigned short shmem_off_t;
/**Represents a region of alloc-able memory.
@@ -83,6 +81,8 @@ virtaddr_t *pagedir_get_mapping(
size_t pagedir_mapping_get_pfn(virtaddr_t *mapping);
virtaddr_t pagedir_ident_from_mapping(virtaddr_t *mapping);
bool pagedir_mapping_is_present(virtaddr_t *mapping);
+bool pagedir_mapping_is_writeable(virtaddr_t *mapping);
+bool pagedir_mapping_is_executable(virtaddr_t *mapping);
void pagedir_mapping_set_pfn(virtaddr_t *mapping, size_t pfn);
void pagedir_mapping_set_present(virtaddr_t *mapping, bool present);
@@ -92,13 +92,13 @@ void pagedir_mapping_set_type(virtaddr_t *mapping, int type);
int pagedir_map_untyped_frame(
jove_owned_obj_t *tgt, jove_perm_obj_t *untyped_obj,
- virtaddr_t vptr, struct syscall_pagedir_flags flg);
+ virtaddr_t vptr, struct pagedir_mapping_flags flags);
int pagedir_map_untyped_table(
jove_owned_obj_t *tgt, jove_perm_obj_t *untyped_obj,
virtaddr_t vptr);
int pagedir_map_shmem_frame(
jove_owned_obj_t *tgt, jove_perm_obj_t *shmem_obj, uint8_t page_offset,
- virtaddr_t vptr, struct syscall_pagedir_flags flg);
+ virtaddr_t vptr, struct pagedir_mapping_flags flags);
int pagedir_unmap_untyped_frame(
jove_owned_obj_t *tgt, jove_owned_obj_t *dst, uintptr_t vptr);