/trunk/kernel/generic/include/proc/thread.h |
---|
250,6 → 250,7 |
/* Thread syscall prototypes. */ |
unative_t sys_thread_create(uspace_arg_t *uspace_uarg, char *uspace_name); |
unative_t sys_thread_exit(int uspace_status); |
unative_t sys_thread_get_id(void); |
#endif |
/trunk/kernel/generic/include/syscall/syscall.h |
---|
40,6 → 40,7 |
SYS_TLS_SET = 1, /* Hardcoded in AMD64, IA32 uspace - psthread.S */ |
SYS_THREAD_CREATE, |
SYS_THREAD_EXIT, |
SYS_THREAD_GET_ID, |
SYS_TASK_GET_ID, |
SYS_FUTEX_SLEEP, |
SYS_FUTEX_WAKEUP, |
/trunk/kernel/generic/src/proc/thread.c |
---|
678,6 → 678,18 |
return 0; |
} |
/** Syscall for getting TID. |
* |
* @return Thread ID. |
*/ |
unative_t sys_thread_get_id(void) |
{ |
/* |
* No need to acquire lock on THREAD because tid |
* remains constant for the lifespan of the thread. |
*/ |
return THREAD->tid; |
} |
/** @} |
*/ |
/trunk/kernel/generic/src/syscall/syscall.c |
---|
118,6 → 118,7 |
/* Thread and task related syscalls. */ |
(syshandler_t) sys_thread_create, |
(syshandler_t) sys_thread_exit, |
(syshandler_t) sys_thread_get_id, |
(syshandler_t) sys_task_get_id, |
/* Synchronization related syscalls. */ |