aboutsummaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2024-03-16 13:03:19 -0400
committerIan Moffett <ian@osmora.org>2024-03-16 13:03:19 -0400
commitf166b2303a96a5e65e235139291df93b2b24bc3e (patch)
tree556e787bfc6ed1c9891aec9023ce4f8caf589958 /sys/arch
parent3db86a30644d3eb3a964202dbfd7e91c432bda7b (diff)
kernel,libc: syscall: Improve syscall code
- Remove the SYS_debug syscall - First syscall starts at 1 Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/amd64/amd64/syscall.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/arch/amd64/amd64/syscall.c b/sys/arch/amd64/amd64/syscall.c
index e80fe94..68235d5 100644
--- a/sys/arch/amd64/amd64/syscall.c
+++ b/sys/arch/amd64/amd64/syscall.c
@@ -42,7 +42,8 @@ __syscall(struct trapframe *tf)
.sp = tf->rsp
};
- if (args.code < __MAX_SYSCALLS) {
- tf->rax = g_syscall_table[tf->rax](&args);
+ if (args.code < __MAX_SYSCALLS && args.code > 0) {
+ args.code -= 1;
+ tf->rax = g_syscall_table[args.code](&args);
}
}