aboutsummaryrefslogtreecommitdiff
path: root/src/lib/paging.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/paging.zig')
-rw-r--r--src/lib/paging.zig3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/paging.zig b/src/lib/paging.zig
index dd1feeb..d69a17c 100644
--- a/src/lib/paging.zig
+++ b/src/lib/paging.zig
@@ -14,6 +14,8 @@ pub const text_start = @extern(*anyopaque, .{ .name = "_text_start" });
pub const text_end = @extern(*anyopaque, .{ .name = "_text_end" });
pub const rodata_start = @extern(*anyopaque, .{ .name = "_rodata_start" });
pub const rodata_end = @extern(*anyopaque, .{ .name = "_rodata_end" });
+pub const userinit_start = @extern(*anyopaque, .{ .name = "_userinit_start" });
+pub const userinit_end = @extern(*anyopaque, .{ .name = "_userinit_end" });
pub const data_start = @extern(*anyopaque, .{ .name = "_data_start" });
pub const data_end = @extern(*anyopaque, .{ .name = "_data_end" });
pub const bss_start = @extern(*anyopaque, .{ .name = "_bss_start" });
@@ -458,6 +460,7 @@ pub const Table = struct {
pub fn mapKernel(root: *Table) !void {
try root.identityMapRange(@intFromPtr(text_start), @intFromPtr(text_end), EntryFlags.readExec);
try root.identityMapRange(@intFromPtr(rodata_start), @intFromPtr(rodata_end), EntryFlags.readOnly);
+ try root.identityMapRange(@intFromPtr(userinit_start), @intFromPtr(userinit_end), EntryFlags.readOnly);
try root.identityMapRange(@intFromPtr(data_start), @intFromPtr(data_end), EntryFlags.readWrite);
try root.identityMapRange(@intFromPtr(bss_start), @intFromPtr(bss_end), EntryFlags.readWrite);
try root.identityMapRange(@intFromPtr(stack_start), @intFromPtr(stack_end), EntryFlags.readWrite);