aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/resources.zig22
-rw-r--r--src/lib/syscall.zig6
2 files changed, 6 insertions, 22 deletions
diff --git a/src/lib/resources.zig b/src/lib/resources.zig
index 2d2e871..315fe57 100644
--- a/src/lib/resources.zig
+++ b/src/lib/resources.zig
@@ -52,12 +52,6 @@ const iofs = struct {
};
const processfs = struct {
- const self = struct {
- fn threadId(_: u16, thread_id: usize, _: usize) callconv(.C) Result(usize) {
- return Result(usize).fromAnyTypeOrError(thread_id);
- }
- };
-
const CreationContext = struct {
rd: vfs.ResourceDescriptor,
buffer: std.ArrayListAligned(u8, paging.page_size),
@@ -202,7 +196,6 @@ pub fn provideBuiltin(allocator: std.mem.Allocator) !void {
try addDir("/io");
try addDir("/userinit");
try addDir("/process");
- try addDir("/process/self");
try provideConsole();
try provideUserinit(allocator);
@@ -257,21 +250,6 @@ fn provideProcess() !void {
}, 0, .{
.reclaimable = false,
});
-
- try provideProcessSelf();
-}
-
-fn provideProcessSelf() !void {
- try vfs.provideResource("/process/self/thread_id", .{
- .tag = .hook,
- .data = .{
- .hook = .{
- .callback = processfs.self.threadId,
- },
- },
- }, 0, .{
- .reclaimable = false,
- });
}
fn addFile(path: []const u8, file: File) !void {
diff --git a/src/lib/syscall.zig b/src/lib/syscall.zig
index 9f88aea..01cd79c 100644
--- a/src/lib/syscall.zig
+++ b/src/lib/syscall.zig
@@ -36,6 +36,7 @@ pub fn handler(proc: *process.Info, trap_frame: *trap.Frame) !void {
100011 => ret(null, trap_frame, list(proc, trap_frame)),
100012 => ret(null, trap_frame, terminate(proc)),
100013 => ret(null, trap_frame, processId(proc)),
+ 100014 => ret(null, trap_frame, threadId(proc)),
else => return HandleError.UnknownSyscall,
}
}
@@ -315,3 +316,8 @@ fn terminate(proc: *process.Info) void {
fn processId(proc: *process.Info) usize {
return proc.id;
}
+
+// threadId() usize
+fn threadId(proc: *process.Info) usize {
+ return proc.thread_id;
+}