aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHimbeer <himbeer@disroot.org>2024-08-01 18:39:24 +0200
committerHimbeer <himbeer@disroot.org>2024-08-01 18:39:24 +0200
commit62aa03dc95b98e85716f3836f2baa2b0611454c3 (patch)
treed6702472bab638e05da00c9b0ffffa2fa77af36f
parentf3480ccf9c3bedfb5951f052bb221b9c1074568f (diff)
syscall: Merge OutOfRange and PidOutOfRange errors
-rw-r--r--src/syscall.zig17
1 files changed, 4 insertions, 13 deletions
diff --git a/src/syscall.zig b/src/syscall.zig
index dd894e8..e8a2f89 100644
--- a/src/syscall.zig
+++ b/src/syscall.zig
@@ -12,14 +12,8 @@ const paging = @import("paging.zig");
const process = @import("process.zig");
const riscv = @import("riscv.zig");
-pub const ArgumentError = error{
- ZeroAddressSupplied,
- OutOfRange,
-};
-
-pub const HandleError = error{
- UnknownSyscall,
-};
+pub const ArgumentError = error{ ZeroAddressSupplied, OutOfRange };
+pub const HandleError = error{UnknownSyscall};
pub fn handler(proc: *process.Info, trap_frame: *TrapFrame) !void {
switch (trap_frame.general_purpose_registers[17]) {
@@ -109,16 +103,13 @@ fn end(proc: *process.Info) noreturn {
};
}
-pub const TerminateError = error{
- PidOutOfRange,
- ProcessNotFound,
-};
+pub const TerminateError = error{ProcessNotFound};
// terminate(pid: u16, tid: usize) !void
fn terminate(proc: *const process.Info, trap_frame: *const TrapFrame) !void {
const pid_wide = trap_frame.general_purpose_registers[10];
const pid = std.math.cast(u16, pid_wide) orelse {
- return TerminateError.PidOutOfRange;
+ return ArgumentError.OutOfRange;
};
const tid = trap_frame.general_purpose_registers[11];