aboutsummaryrefslogtreecommitdiff
path: root/common/uapi/timers.c
diff options
context:
space:
mode:
authorKimplul <kimi.h.kuparinen@gmail.com>2022-05-09 00:12:05 +0300
committerKimplul <kimi.h.kuparinen@gmail.com>2022-05-09 00:12:05 +0300
commit42a1e087ce99f07b48aaea5552f8e1ce5219d228 (patch)
tree086ac77af67a46ff4ba420c4562cbf6a57d09ab0 /common/uapi/timers.c
parent658f21dd60bb930c5226b611bbe8cb95713b3f76 (diff)
downloadkmi-42a1e087ce99f07b48aaea5552f8e1ce5219d228.tar.gz
kmi-42a1e087ce99f07b48aaea5552f8e1ce5219d228.zip
improve uapi
Diffstat (limited to 'common/uapi/timers.c')
-rw-r--r--common/uapi/timers.c22
1 files changed, 13 insertions, 9 deletions
diff --git a/common/uapi/timers.c b/common/uapi/timers.c
index 5ce596f..97a1d30 100644
--- a/common/uapi/timers.c
+++ b/common/uapi/timers.c
@@ -1,7 +1,7 @@
#include <apos/timer.h>
#include <apos/uapi.h>
-static ticks_t scaled_ticks(vm_t ticks, vm_t repeat)
+static ticks_t scaled_ticks(sys_arg_t ticks, sys_arg_t repeat)
{
#if __WORDSIZE == 64
UNUSED(repeat);
@@ -13,25 +13,29 @@ static ticks_t scaled_ticks(vm_t ticks, vm_t repeat)
SYSCALL_DEFINE0(timebase)()
{
- return secs_to_ticks(1);
+ return (struct sys_ret){ OK, secs_to_ticks(1) };
}
-SYSCALL_DEFINE2(req_rel_timer)(vm_t ticks, vm_t repeat)
+SYSCALL_DEFINE2(req_rel_timer)(sys_arg_t ticks, sys_arg_t repeat)
{
- return new_rel_timer(cur_tcb()->tid, scaled_ticks(ticks, repeat));
+ return (struct sys_ret){
+ OK, new_rel_timer(cur_tcb()->tid, scaled_ticks(ticks, repeat))
+ };
}
-SYSCALL_DEFINE2(req_abs_timer)(vm_t ticks, vm_t repeat)
+SYSCALL_DEFINE2(req_abs_timer)(sys_arg_t ticks, sys_arg_t repeat)
{
- return new_abs_timer(cur_tcb()->tid, scaled_ticks(ticks, repeat));
+ return (struct sys_ret){
+ OK, new_abs_timer(cur_tcb()->tid, scaled_ticks(ticks, repeat))
+ };
}
-SYSCALL_DEFINE1(free_timer)(vm_t cid)
+SYSCALL_DEFINE1(free_timer)(sys_arg_t cid)
{
struct timer *timer = find_timer(cid);
if (!timer)
- return ERR_NF;
+ return (struct sys_ret){ ERR_NF, 0 };
remove_timer(timer);
- return OK;
+ return (struct sys_ret){ OK, 0 };
}