diff --git a/kernel-src/sys/syscalls/futex.c b/kernel-src/sys/syscalls/futex.c index e714214b..d992c7d9 100644 --- a/kernel-src/sys/syscalls/futex.c +++ b/kernel-src/sys/syscalls/futex.c @@ -7,9 +7,8 @@ #include #include -static mutex_t futexmutex; -static hashtable_t hashtable; -static bool hashtableinit; +static MUTEX_DEFINE(futexmutex); +HASHTABLE_DEFINE_STATIC(hashtable, 256); typedef struct { pollheader_t pollheader; @@ -46,16 +45,6 @@ syscallret_t syscall_futex(context_t *, uint32_t *futexp, int op, uint32_t value return ret; } - if (unlikely(hashtableinit == false)) { - if (unlikely(hashtable_init(&hashtable, 256))) { - ret.errno = ENOMEM; - return ret; - } - - hashtableinit = true; - MUTEX_INIT(&futexmutex); - } - timespec_t timespec = {0}; if (tm) { ret.errno = usercopy_fromuser(×pec, tm, sizeof(timespec_t));