diff --git a/hermit/kernel/syscall.c b/hermit/kernel/syscall.c index 7afc241be..9e759800d 100644 --- a/hermit/kernel/syscall.c +++ b/hermit/kernel/syscall.c @@ -359,7 +359,10 @@ int sys_sem_timedwait(sem_t *sem, unsigned int ms) int sys_sem_cancelablewait(sem_t* sem, unsigned int ms) { - return -ENOSYS; + if (BUILTIN_EXPECT(!sem, 0)) + return -EINVAL; + + return sem_wait(sem, ms); } int sys_clone(tid_t* id, void* ep, void* argv) diff --git a/hermit/kernel/tasks.c b/hermit/kernel/tasks.c index dce4bb60c..1b546bcf1 100644 --- a/hermit/kernel/tasks.c +++ b/hermit/kernel/tasks.c @@ -315,8 +315,6 @@ int clone_task(tid_t* id, entry_point_t ep, void* arg, uint8_t prio) if ((core_id >= MAX_CORES) || !readyqueues[core_id].idle) core_id = CORE_ID; - kprintf("start new thread on core %d with stack address %p\n", core_id, stack); - for(i=0; i