summaryrefslogtreecommitdiffstats
path: root/lib/libjove/arch/x86_64/object/directory.c
diff options
context:
space:
mode:
authorJon Santmyer <jon@jonsantmyer.com>2025-08-19 15:04:04 -0400
committerJon Santmyer <jon@jonsantmyer.com>2025-08-19 15:04:04 -0400
commit858a52c06a4615bd58a6a906333f2ad707d41c0a (patch)
tree16870cd4d67da283567a72a74d28c04464da292a /lib/libjove/arch/x86_64/object/directory.c
parent65ba015d6c1f248d36ad01a653bc49637804b15b (diff)
downloadjove-os-858a52c06a4615bd58a6a906333f2ad707d41c0a.tar.gz
jove-os-858a52c06a4615bd58a6a906333f2ad707d41c0a.tar.bz2
jove-os-858a52c06a4615bd58a6a906333f2ad707d41c0a.zip
usermode pager
Diffstat (limited to 'lib/libjove/arch/x86_64/object/directory.c')
-rw-r--r--lib/libjove/arch/x86_64/object/directory.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/libjove/arch/x86_64/object/directory.c b/lib/libjove/arch/x86_64/object/directory.c
new file mode 100644
index 0000000..01f57c4
--- /dev/null
+++ b/lib/libjove/arch/x86_64/object/directory.c
@@ -0,0 +1,15 @@
+#include <object.h>
+#include <arch/x86_64/object-pagemap.h>
+
+JoveError
+_jove_objdir_sync_at_arch(KernelObjectDirectory *dir, uint8_t i, obj_type_t type, KernelObjectTyped **memb)
+{
+ KernelObjectTyped *dirmemb = NULL;
+ switch(type) {
+ case KO_MEMORY_MAPPING:
+ dirmemb = JOVE_OBJECT_TYPED(_jove_alloc_pagemap(dir, i));
+ if(memb) *memb = dirmemb;
+ break;
+ }
+ return EJOVE_OK;
+}