summaryrefslogtreecommitdiffstats
path: root/hal
diff options
context:
space:
mode:
authorJon Santmyer <jon@jonsantmyer.com>2026-09-26 17:11:50 -0400
committerJon Santmyer <jon@jonsantmyer.com>2026-09-26 17:11:50 -0400
commit5f813d49a08cf3c3f8cf6c422cfb6587df575f62 (patch)
treebd8872ee24580614b3eb845e1de26d465b025a09 /hal
parentb6765812f7da9feccc271e8e0b06f166e8054386 (diff)
downloadjove-kernel-5f813d49a08cf3c3f8cf6c422cfb6587df575f62.tar.gz
jove-kernel-5f813d49a08cf3c3f8cf6c422cfb6587df575f62.tar.bz2
jove-kernel-5f813d49a08cf3c3f8cf6c422cfb6587df575f62.zip
add docs for syscalls. make syscall code kind-of cleaner
Diffstat (limited to 'hal')
-rw-r--r--hal/memory.h10
-rw-r--r--hal/process.h2
2 files changed, 9 insertions, 3 deletions
diff --git a/hal/memory.h b/hal/memory.h
index 47dbf0a..6e685d6 100644
--- a/hal/memory.h
+++ b/hal/memory.h
@@ -1,3 +1,4 @@
+#include "sys/syscall.h"
#ifndef _JOVE_HAL_MEMORY_H
#define _JOVE_HAL_MEMORY_H 1
@@ -23,16 +24,21 @@ int untyped_merge(jove_owned_obj_t *a, jove_owned_obj_t *b);
int untyped_retype(jove_owned_obj_t *tgt, uint8_t newtype);
int pagedir_map_untyped_frame(
- jove_owned_obj_t *tgt, jove_owned_obj_t *untyped_obj,
+ jove_owned_obj_t *tgt, jove_perm_obj_t *untyped_obj,
uintptr_t vptr, struct syscall_pagedir_flags flg);
int pagedir_map_untyped_table(
- jove_owned_obj_t *tgt, jove_owned_obj_t *untyped_obj,
+ jove_owned_obj_t *tgt, jove_perm_obj_t *untyped_obj,
uintptr_t vptr);
+int pagedir_map_shmem_frame(
+ jove_owned_obj_t *tgt, jove_perm_obj_t *shmem_obj, uint8_t page_offset,
+ uintptr_t vptr, struct syscall_pagedir_flags flg);
int pagedir_unmap_untyped_frame(
jove_owned_obj_t *tgt, jove_owned_obj_t *dst, uintptr_t vptr);
int pagedir_unmap_untyped_table(
jove_owned_obj_t *tgt, jove_owned_obj_t *dst, uintptr_t vptr);
+int pagedir_unmap_shmem_frame(
+ jove_owned_obj_t *tgt, uintptr_t vptr);
#endif
diff --git a/hal/process.h b/hal/process.h
index 63c800f..da3e050 100644
--- a/hal/process.h
+++ b/hal/process.h
@@ -24,6 +24,6 @@ jove_owned_obj_t *process_current(void);
pid_t pcb_pid(pcb_t *pcb);
/*Returns the root kernel object directory of this PCB. */
-jove_owned_obj_t *pcb_rootdir(pcb_t *pcb);
+jove_obj_t *pcb_rootdir(pcb_t *pcb);
#endif