aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/kern_syscall.c
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2024-03-16 12:42:25 -0400
committerIan Moffett <ian@osmora.org>2024-03-16 12:42:25 -0400
commit3db86a30644d3eb3a964202dbfd7e91c432bda7b (patch)
tree43d16c68f59c252075231f84e179fbdb68f00318 /sys/kern/kern_syscall.c
parent51a3988ec0ea1de35e47a999a76c14df05737a34 (diff)
kernel: syscall: Remove syscall_args.ret
It is better to just return a value within the syscall handler and have that passed down to __syscall() like that Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'sys/kern/kern_syscall.c')
-rw-r--r--sys/kern/kern_syscall.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/kern/kern_syscall.c b/sys/kern/kern_syscall.c
index 2c7215c..5a88bbb 100644
--- a/sys/kern/kern_syscall.c
+++ b/sys/kern/kern_syscall.c
@@ -30,21 +30,23 @@
#include <sys/syscall.h>
#include <sys/sched.h>
#include <sys/cdefs.h>
+#include <sys/types.h>
-static void
+static uint64_t
sys_debug(struct syscall_args *args)
{
/* TODO */
+ return 0;
}
-__noreturn static void
+__noreturn static uint64_t
sys_exit(struct syscall_args *args)
{
sched_exit();
__builtin_unreachable();
}
-void(*g_syscall_table[__MAX_SYSCALLS])(struct syscall_args *args) = {
+uint64_t(*g_syscall_table[__MAX_SYSCALLS])(struct syscall_args *args) = {
sys_debug,
sys_exit,
};