aboutsummaryrefslogtreecommitdiff
path: root/src/lib/syscall.zig
diff options
context:
space:
mode:
authorHimbeer <himbeer@disroot.org>2024-07-27 18:26:52 +0200
committerHimbeer <himbeer@disroot.org>2024-07-27 18:26:52 +0200
commitc790e2a5bebfbd7f005ae60c860c051c46e5c810 (patch)
tree92ac2eda411cc050adeb83e2fb9c2a8e45518fcf /src/lib/syscall.zig
parent4a4f013cbecd22a3e20f9fdf4c236f6bdf506343 (diff)
syscall: Enable user memory access when launching an ELF
Fixes the launch() syscall causing a load page fault.
Diffstat (limited to 'src/lib/syscall.zig')
-rw-r--r--src/lib/syscall.zig3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/syscall.zig b/src/lib/syscall.zig
index ab36dc0..959a8ad 100644
--- a/src/lib/syscall.zig
+++ b/src/lib/syscall.zig
@@ -81,6 +81,9 @@ fn launch(trap_frame: *const trap.Frame) !usize {
const bytes = bytes_ptr[0..len];
+ paging.setUserMemoryAccess(true);
+ defer paging.setUserMemoryAccess(false);
+
const new_proc = try process.create(mem.page_allocator, bytes);
return new_proc.id;
}