include/tib.h
210
#define TIB_INIT(tib, dtv, thread) do { \
include/tib.h
211
(tib)->tib_thread = (thread); \
lib/libc/dlfcn/init.c
328
_static_tls_init(char *base, void *thread)
lib/libc/dlfcn/init.c
347
TIB_INIT(tib, NULL, thread);
lib/libc/dlfcn/tib.c
47
char *thread;
lib/libc/dlfcn/tib.c
57
thread = base;
lib/libc/dlfcn/tib.c
66
thread = (char *)base + _static_tls_align_offset + _static_tls_size +
lib/libc/dlfcn/tib.c
70
return _static_tls_init(base, thread);
lib/libc/thread/rthread.c
295
pthread_t thread = &_initial_thread;
lib/libc/thread/rthread.c
302
tib->tib_thread = thread;
lib/libc/thread/rthread.c
303
thread->tib = tib;
lib/libc/thread/rthread.c
305
thread->donesem.lock = _SPINLOCK_UNLOCKED;
lib/libc/thread/rthread.c
327
thread->gmonparam = _gmon_alloc();
lib/libc/thread/rthread.c
348
pthread_t thread = pthread_self();
lib/libc/thread/rthread.c
350
tib = thread->tib;
lib/libc/thread/rthread.c
363
thread->retval = retval;
lib/libc/thread/rthread.c
365
for (clfn = thread->cleanup_fns; clfn; ) {
lib/libc/thread/rthread.c
372
_rthread_tls_destructors(thread);
lib/libc/thread/rthread.c
375
_thread_cb.tc_thread_release(thread);
lib/libc/thread/rthread_sync.c
586
pthread_t thread;
lib/libc/thread/rthread_sync.c
597
thread = TAILQ_FIRST(&cond->waiters);
lib/libc/thread/rthread_sync.c
598
if (thread == NULL) {
lib/libc/thread/rthread_sync.c
604
assert(thread->blocking_cond == cond);
lib/libc/thread/rthread_sync.c
605
TAILQ_REMOVE(&cond->waiters, thread, waiting);
lib/libc/thread/rthread_sync.c
606
thread->blocking_cond = NULL;
lib/libc/thread/rthread_sync.c
619
mutex->owner = thread;
lib/libc/thread/rthread_sync.c
621
TAILQ_INSERT_TAIL(&mutex->lockers, thread, waiting);
lib/libc/thread/rthread_sync.c
624
__thrwakeup(thread, 1);
lib/libc/thread/rthread_sync.c
634
pthread_t thread;
lib/libc/thread/rthread_sync.c
646
thread = TAILQ_FIRST(&cond->waiters);
lib/libc/thread/rthread_sync.c
647
if (thread == NULL) {
lib/libc/thread/rthread_sync.c
657
p = thread;
lib/libc/thread/rthread_sync.c
671
thread->waiting.tqe_prev = mutex->lockers.tqh_last;
lib/libc/thread/rthread_sync.c
672
*(mutex->lockers.tqh_last) = thread;
lib/libc/thread/rthread_sync.c
678
TAILQ_REMOVE(&mutex->lockers, thread, waiting);
lib/libc/thread/rthread_sync.c
679
mutex->owner = thread;
lib/libc/thread/rthread_sync.c
681
__thrwakeup(thread, 1);
lib/libc/thread/rthread_tls.c
163
_rthread_tls_destructors(pthread_t thread)
lib/libc/thread/rthread_tls.c
170
for (rs = thread->local_storage; rs; rs = rs->next) {
lib/libc/thread/rthread_tls.c
184
for (rs = thread->local_storage; rs; rs = thread->local_storage) {
lib/libc/thread/rthread_tls.c
185
thread->local_storage = rs->next;
lib/librthread/rthread.c
157
_rthread_free(pthread_t thread)
lib/librthread/rthread.c
160
TAILQ_INSERT_TAIL(&_thread_gc_list, thread, waiting);
lib/librthread/rthread.c
165
_thread_release(pthread_t thread)
lib/librthread/rthread.c
168
LIST_REMOVE(thread, threads);
lib/librthread/rthread.c
171
_spinlock(&thread->flags_lock);
lib/librthread/rthread.c
172
if (thread->flags & THREAD_DETACHED) {
lib/librthread/rthread.c
173
_spinunlock(&thread->flags_lock);
lib/librthread/rthread.c
174
_rthread_free(thread);
lib/librthread/rthread.c
176
thread->flags |= THREAD_DONE;
lib/librthread/rthread.c
177
_spinunlock(&thread->flags_lock);
lib/librthread/rthread.c
178
_sem_post(&thread->donesem);
lib/librthread/rthread.c
185
pthread_t thread;
lib/librthread/rthread.c
188
LIST_FOREACH(thread, &_thread_list, threads) {
lib/librthread/rthread.c
189
for (rs = thread->local_storage; rs; rs = rs->next) {
lib/librthread/rthread.c
199
pthread_t thread = pthread_self();
lib/librthread/rthread.c
205
LIST_INSERT_HEAD(&_thread_list, thread, threads);
lib/librthread/rthread.c
209
thread->attr = _rthread_attr_default;
lib/librthread/rthread.c
253
pthread_t thread;
lib/librthread/rthread.c
257
TAILQ_FOREACH(thread, &_thread_gc_list, waiting) {
lib/librthread/rthread.c
258
if (thread->tib->tib_tid != 0)
lib/librthread/rthread.c
260
TAILQ_REMOVE(&_thread_gc_list, thread, waiting);
lib/librthread/rthread.c
262
if (thread != &_initial_thread) {
lib/librthread/rthread.c
264
(void *)thread, (void *)thread->stack);
lib/librthread/rthread.c
265
_rthread_free_stack(thread->stack);
lib/librthread/rthread.c
266
_dl_free_tib(thread->tib, sizeof(*thread));
lib/librthread/rthread.c
270
(void *)thread);
lib/librthread/rthread.c
271
_dl_free_tib(thread->tib, 0);
lib/librthread/rthread.c
283
pthread_join(pthread_t thread, void **retval)
lib/librthread/rthread.c
301
if (thread == NULL)
lib/librthread/rthread.c
303
else if (thread == self)
lib/librthread/rthread.c
305
else if (thread->flags & THREAD_DETACHED)
lib/librthread/rthread.c
307
else if ((e = _sem_wait(&thread->donesem, 0, NULL,
lib/librthread/rthread.c
310
*retval = thread->retval;
lib/librthread/rthread.c
317
if ((thread->flags & THREAD_DETACHED) == 0)
lib/librthread/rthread.c
318
_rthread_free(thread);
lib/librthread/rthread.c
327
pthread_detach(pthread_t thread)
lib/librthread/rthread.c
331
_spinlock(&thread->flags_lock);
lib/librthread/rthread.c
332
if (thread->flags & THREAD_DETACHED) {
lib/librthread/rthread.c
334
_spinunlock(&thread->flags_lock);
lib/librthread/rthread.c
335
} else if (thread->flags & THREAD_DONE) {
lib/librthread/rthread.c
336
_spinunlock(&thread->flags_lock);
lib/librthread/rthread.c
337
_rthread_free(thread);
lib/librthread/rthread.c
339
thread->flags |= THREAD_DETACHED;
lib/librthread/rthread.c
340
_spinunlock(&thread->flags_lock);
lib/librthread/rthread.c
352
pthread_t thread;
lib/librthread/rthread.c
361
tib = _dl_allocate_tib(sizeof(*thread));
lib/librthread/rthread.c
364
thread = tib->tib_thread;
lib/librthread/rthread.c
365
memset(thread, 0, sizeof(*thread));
lib/librthread/rthread.c
366
thread->tib = tib;
lib/librthread/rthread.c
367
thread->donesem.lock = _SPINLOCK_UNLOCKED;
lib/librthread/rthread.c
368
thread->flags_lock = _SPINLOCK_UNLOCKED;
lib/librthread/rthread.c
369
thread->fn = start_routine;
lib/librthread/rthread.c
370
thread->arg = arg;
lib/librthread/rthread.c
373
thread->attr = attr != NULL ? *(*attr) : _rthread_attr_default;
lib/librthread/rthread.c
374
if (thread->attr.sched_inherit == PTHREAD_INHERIT_SCHED) {
lib/librthread/rthread.c
377
thread->attr.sched_policy = self->attr.sched_policy;
lib/librthread/rthread.c
378
thread->attr.sched_param = self->attr.sched_param;
lib/librthread/rthread.c
380
if (thread->attr.detach_state == PTHREAD_CREATE_DETACHED)
lib/librthread/rthread.c
381
thread->flags |= THREAD_DETACHED;
lib/librthread/rthread.c
383
thread->stack = _rthread_alloc_stack(thread);
lib/librthread/rthread.c
384
if (!thread->stack) {
lib/librthread/rthread.c
391
param.tf_stack = thread->stack->sp;
lib/librthread/rthread.c
394
LIST_INSERT_HEAD(&_thread_list, thread, threads);
lib/librthread/rthread.c
402
thread->gmonparam = _gmon_alloc();
lib/librthread/rthread.c
405
rc = __tfork_thread(¶m, sizeof(param), _rthread_start, thread);
lib/librthread/rthread.c
408
*threadp = thread;
lib/librthread/rthread.c
415
LIST_REMOVE(thread, threads);
lib/librthread/rthread.c
417
_rthread_free_stack(thread->stack);
lib/librthread/rthread.c
419
_dl_free_tib(tib, sizeof(*thread));
lib/librthread/rthread.c
425
pthread_kill(pthread_t thread, int sig)
lib/librthread/rthread.c
427
struct tib *tib = thread->tib;
lib/librthread/rthread.c
437
pthread_cancel(pthread_t thread)
lib/librthread/rthread.c
439
struct tib *tib = thread->tib;
lib/librthread/rthread.c
557
pthread_t thread;
lib/librthread/rthread.c
560
LIST_FOREACH(thread, &_thread_list, threads)
lib/librthread/rthread.c
561
printf("thread %d flags 0x%x name %s\n", thread->tib->tib_tid,
lib/librthread/rthread.c
562
thread->tib->tib_thread_flags, thread->name);
lib/librthread/rthread.c
96
pthread_t thread = v;
lib/librthread/rthread.c
99
retval = thread->fn(thread->arg);
lib/librthread/rthread_getcpuclockid.c
25
pthread_getcpuclockid(pthread_t thread, clockid_t *clock_id)
lib/librthread/rthread_getcpuclockid.c
28
thread->tib->tib_tid);
lib/librthread/rthread_np.c
43
pthread_set_name_np(pthread_t thread, const char *name)
lib/librthread/rthread_np.c
47
if (thread != pthread_self())
lib/librthread/rthread_np.c
48
tid = thread->tib->tib_tid;
lib/librthread/rthread_np.c
53
pthread_get_name_np(pthread_t thread, char *name, size_t len)
lib/librthread/rthread_np.c
58
if (thread != pthread_self())
lib/librthread/rthread_np.c
59
tid = thread->tib->tib_tid;
lib/librthread/rthread_np.c
83
pthread_stackseg_np(pthread_t thread, stack_t *sinfo)
lib/librthread/rthread_np.c
85
if (thread->stack) {
lib/librthread/rthread_np.c
87
sinfo->ss_sp = thread->stack->base;
lib/librthread/rthread_np.c
89
sinfo->ss_sp = (char *)thread->stack->base +
lib/librthread/rthread_np.c
90
thread->stack->len;
lib/librthread/rthread_np.c
92
sinfo->ss_size = thread->stack->len;
lib/librthread/rthread_np.c
93
if (thread->stack->guardsize != 1)
lib/librthread/rthread_np.c
94
sinfo->ss_size -= thread->stack->guardsize;
lib/librthread/rthread_np.c
97
} else if (thread->tib->tib_thread_flags & TIB_THREAD_INITIAL_STACK) {
lib/librthread/rthread_rwlock_compat.c
105
_rthread_debug(5, "%p: rwlock_rdlock %p\n", (void *)thread,
lib/librthread/rthread_rwlock_compat.c
114
else if (lock->owner == thread)
lib/librthread/rthread_rwlock_compat.c
157
pthread_t thread = pthread_self();
lib/librthread/rthread_rwlock_compat.c
165
_rthread_debug(5, "%p: rwlock_timedwrlock %p\n", (void *)thread,
lib/librthread/rthread_rwlock_compat.c
169
lock->owner = thread;
lib/librthread/rthread_rwlock_compat.c
172
else if (lock->owner == thread)
lib/librthread/rthread_rwlock_compat.c
178
TAILQ_INSERT_TAIL(&lock->writers, thread, waiting);
lib/librthread/rthread_rwlock_compat.c
180
do_wait = __thrsleep(thread, CLOCK_REALTIME, abstime,
lib/librthread/rthread_rwlock_compat.c
183
} while (lock->owner != thread && do_wait);
lib/librthread/rthread_rwlock_compat.c
185
if (lock->owner != thread) {
lib/librthread/rthread_rwlock_compat.c
187
TAILQ_REMOVE(&lock->writers, thread, waiting);
lib/librthread/rthread_rwlock_compat.c
222
pthread_t thread = pthread_self();
lib/librthread/rthread_rwlock_compat.c
228
_rthread_debug(5, "%p: rwlock_unlock %p\n", (void *)thread,
lib/librthread/rthread_rwlock_compat.c
232
assert(lock->owner == thread);
lib/librthread/rthread_rwlock_compat.c
98
pthread_t thread = pthread_self();
lib/librthread/rthread_sched.c
121
pthread_getprio(pthread_t thread)
lib/librthread/rthread_sched.c
126
return (thread->attr.sched_param.sched_priority);
lib/librthread/rthread_sched.c
130
pthread_setprio(pthread_t thread, int priority)
lib/librthread/rthread_sched.c
135
thread->attr.sched_param.sched_priority = priority;
lib/librthread/rthread_sched.c
32
pthread_getschedparam(pthread_t thread, int *policy,
lib/librthread/rthread_sched.c
38
*policy = thread->attr.sched_policy;
lib/librthread/rthread_sched.c
40
*param = thread->attr.sched_param;
lib/librthread/rthread_sched.c
46
pthread_setschedparam(pthread_t thread, int policy,
lib/librthread/rthread_sched.c
56
thread->attr.sched_policy = policy;
lib/librthread/rthread_sched.c
58
thread->attr.sched_param = *param;
lib/librthread/rthread_stack.c
24
_rthread_alloc_stack(pthread_t thread)
lib/librthread/rthread_stack.c
34
if (thread->attr.stack_addr == NULL &&
lib/librthread/rthread_stack.c
35
thread->attr.stack_size == RTHREAD_STACK_SIZE_DEF &&
lib/librthread/rthread_stack.c
36
thread->attr.guard_size == _thread_pagesize) {
lib/librthread/rthread_stack.c
53
if (thread->attr.stack_size > _thread_pagesize)
lib/librthread/rthread_stack.c
55
else if (thread->attr.stack_size == _thread_pagesize)
lib/librthread/rthread_stack.c
62
if (thread->attr.stack_addr != NULL) {
lib/librthread/rthread_stack.c
63
stack->base = base = thread->attr.stack_addr;
lib/librthread/rthread_stack.c
64
stack->len = thread->attr.stack_size;
lib/librthread/rthread_stack.c
68
stack->sp = base + thread->attr.stack_size - (_STACKALIGNBYTES+1) - rnd;
lib/librthread/rthread_stack.c
80
size = ROUND_TO_PAGE(thread->attr.stack_size);
lib/librthread/rthread_stack.c
81
guardsize = ROUND_TO_PAGE(thread->attr.guard_size);
lib/librthread/rthread_stack.c
84
if (size < thread->attr.stack_size ||
lib/librthread/rthread_stack.c
85
guardsize < thread->attr.guard_size ||
libexec/ld.so/tib.c
108
TIB_INIT(tib, NULL, thread);
libexec/ld.so/tib.c
62
char *thread = NULL;
libexec/ld.so/tib.c
75
thread = base;
libexec/ld.so/tib.c
88
thread = (char *)tib + ELF_ROUND(sizeof *tib, TIB_EXTRA_ALIGN);
regress/lib/libc/stdio_threading/include/local.h
63
if ((r = pthread_create(&pthread[i], NULL, thread, arg))) {
regress/lib/libpthread/cancel2/cancel2.c
102
CHECKr(pthread_create(&thread, NULL, poll_thread, pipe_fd));
regress/lib/libpthread/cancel2/cancel2.c
104
CHECKr(pthread_cancel(thread));
regress/lib/libpthread/cancel2/cancel2.c
105
CHECKr(pthread_join(thread, &result));
regress/lib/libpthread/cancel2/cancel2.c
109
CHECKr(pthread_create(&thread, NULL, ppoll_thread, pipe_fd));
regress/lib/libpthread/cancel2/cancel2.c
111
CHECKr(pthread_cancel(thread));
regress/lib/libpthread/cancel2/cancel2.c
112
CHECKr(pthread_join(thread, &result));
regress/lib/libpthread/cancel2/cancel2.c
81
pthread_t thread;
regress/lib/libpthread/cancel2/cancel2.c
88
CHECKr(pthread_create(&thread, NULL, select_thread, pipe_fd));
regress/lib/libpthread/cancel2/cancel2.c
90
CHECKr(pthread_cancel(thread));
regress/lib/libpthread/cancel2/cancel2.c
91
CHECKr(pthread_join(thread, &result));
regress/lib/libpthread/cancel2/cancel2.c
95
CHECKr(pthread_create(&thread, NULL, pselect_thread, pipe_fd));
regress/lib/libpthread/cancel2/cancel2.c
97
CHECKr(pthread_cancel(thread));
regress/lib/libpthread/cancel2/cancel2.c
98
CHECKr(pthread_join(thread, &result));
regress/lib/libpthread/cancel_wait/cancel_wait.c
101
CHECKr(pthread_create(&thread, NULL, wait4_thread, NULL));
regress/lib/libpthread/cancel_wait/cancel_wait.c
103
CHECKr(pthread_join(thread, &ret));
regress/lib/libpthread/cancel_wait/cancel_wait.c
54
pthread_t thread;
regress/lib/libpthread/cancel_wait/cancel_wait.c
68
CHECKr(pthread_create(&thread, NULL, wait_thread, NULL));
regress/lib/libpthread/cancel_wait/cancel_wait.c
70
CHECKr(pthread_cancel(thread));
regress/lib/libpthread/cancel_wait/cancel_wait.c
71
CHECKr(pthread_join(thread, &ret));
regress/lib/libpthread/cancel_wait/cancel_wait.c
76
CHECKr(pthread_create(&thread, NULL, waitpid_thread, NULL));
regress/lib/libpthread/cancel_wait/cancel_wait.c
78
CHECKr(pthread_cancel(thread));
regress/lib/libpthread/cancel_wait/cancel_wait.c
79
CHECKr(pthread_join(thread, &ret));
regress/lib/libpthread/cancel_wait/cancel_wait.c
84
CHECKr(pthread_create(&thread, NULL, wait3_thread, NULL));
regress/lib/libpthread/cancel_wait/cancel_wait.c
86
CHECKr(pthread_cancel(thread));
regress/lib/libpthread/cancel_wait/cancel_wait.c
87
CHECKr(pthread_join(thread, &ret));
regress/lib/libpthread/cancel_wait/cancel_wait.c
92
CHECKr(pthread_create(&thread, NULL, wait4_thread, NULL));
regress/lib/libpthread/cancel_wait/cancel_wait.c
94
CHECKr(pthread_cancel(thread));
regress/lib/libpthread/cancel_wait/cancel_wait.c
95
CHECKr(pthread_join(thread, &ret));
regress/lib/libpthread/close/close.c
120
pthread_t thread;
regress/lib/libpthread/close/close.c
153
CHECKr(pthread_create(&thread, &attr, new_thread, NULL));
regress/lib/libpthread/closefrom/closefrom.c
25
pthread_t thread;
regress/lib/libpthread/closefrom/closefrom.c
41
CHECKr(pthread_create(&thread, NULL, dummy_thread, NULL));
regress/lib/libpthread/closefrom/closefrom.c
42
CHECKr(pthread_join(thread, &status));
regress/lib/libpthread/group/group.c
148
pthread_t thread[NGRPS];
regress/lib/libpthread/group/group.c
167
CHECKr(pthread_create(&thread[gid], NULL, test, (void *)n));
regress/lib/libpthread/group/group.c
180
CHECKr(pthread_join(thread[gid], &result));
regress/lib/libpthread/malloc_duel/malloc_duel.c
67
CHECKr(pthread_create(&child[i], NULL, thread, NULL));
regress/lib/libpthread/preemption/preemption.c
58
pthread_t thread;
regress/lib/libpthread/preemption/preemption.c
60
CHECKr(pthread_create(&thread, NULL, new_thread, NULL));
regress/lib/libpthread/preemption_float/preemption_float.c
103
pthread_t thread[2];
regress/lib/libpthread/preemption_float/preemption_float.c
106
CHECKr(pthread_create (&thread[0], NULL, trig_loop, NULL));
regress/lib/libpthread/preemption_float/preemption_float.c
107
CHECKr(pthread_create (&thread[1], NULL, log_loop, NULL));
regress/lib/libpthread/preemption_float/preemption_float.c
108
CHECKr(pthread_join(thread[0], (void **) &x));
regress/lib/libpthread/preemption_float/preemption_float.c
109
CHECKr(pthread_join(thread[1], (void **) &y));
regress/lib/libpthread/preemption_float/preemption_float.c
119
pthread_t thread;
regress/lib/libpthread/preemption_float/preemption_float.c
124
CHECKr(pthread_create (&thread, NULL, trig_loop, NULL));
regress/lib/libpthread/preemption_float/preemption_float.c
125
CHECKr(pthread_join(thread, (void **) &result));
regress/lib/libpthread/preemption_float/preemption_float.c
131
CHECKr(pthread_create (&thread, NULL, log_loop, NULL));
regress/lib/libpthread/preemption_float/preemption_float.c
132
CHECKr(pthread_join(thread, (void **) &result));
regress/lib/libpthread/pthread_cond_timedwait/pthread_cond_timedwait.c
116
CHECKr(pthread_create(&thread, NULL, thread_1, NULL));
regress/lib/libpthread/pthread_cond_timedwait/pthread_cond_timedwait.c
122
CHECKr(pthread_create(&thread, NULL, thread_2, NULL));
regress/lib/libpthread/pthread_cond_timedwait/pthread_cond_timedwait.c
79
pthread_t thread;
regress/lib/libpthread/pthread_create/pthread_create.c
60
pthread_t thread;
regress/lib/libpthread/pthread_create/pthread_create.c
64
CHECKr(pthread_create(&thread, NULL, new_thread,
regress/lib/libpthread/pthread_create/pthread_create.c
66
CHECKr(pthread_join(thread, NULL));
regress/lib/libpthread/pthread_join/pthread_join.c
104
CHECKr(pthread_create(&thread, NULL, new_thread_1, (void *)buf));
regress/lib/libpthread/pthread_join/pthread_join.c
108
CHECKr(pthread_join(thread, (void **)(&status)));
regress/lib/libpthread/pthread_join/pthread_join.c
113
CHECKr(pthread_create(&thread, NULL, new_thread_2, (void *)buf));
regress/lib/libpthread/pthread_join/pthread_join.c
116
CHECKr(pthread_join(thread, (void **)(&status)));
regress/lib/libpthread/pthread_join/pthread_join.c
87
pthread_t thread;
regress/lib/libpthread/pthread_kill/pthread_kill.c
65
CHECKr(pthread_create(&thread1, NULL, thread, "T1"));
regress/lib/libpthread/pthread_kill/pthread_kill.c
66
CHECKr(pthread_create(&thread2, NULL, thread, "T2"));
regress/lib/libpthread/pthread_mutex/pthread_mutex.c
234
pthread_t thread;
regress/lib/libpthread/pthread_mutex/pthread_mutex.c
256
CHECKr(pthread_create(&thread, NULL, thread_deadlock, &mutex_normal));
regress/lib/libpthread/pthread_mutex/pthread_mutex.c
72
pthread_t thread;
regress/lib/libpthread/pthread_mutex/pthread_mutex.c
77
CHECKr(pthread_create(&thread, NULL, thread_contention, mutex));
regress/lib/libpthread/pthread_mutex/pthread_mutex.c
85
CHECKr(pthread_join(thread, NULL));
regress/lib/libpthread/sleep/sleep.c
68
pthread_t thread[2];
regress/lib/libpthread/sleep/sleep.c
69
int count = sizeof thread/sizeof thread[0];
regress/lib/libpthread/sleep/sleep.c
77
CHECKr(pthread_create(&thread[i], NULL, new_thread,
regress/lib/libpthread/sleep/sleep.c
81
CHECKr(pthread_join(thread[i], NULL));
regress/lib/libpthread/socket/1/socket1.c
117
pthread_t thread;
regress/lib/libpthread/socket/1/socket1.c
143
CHECKr(pthread_create(&thread, &attr, sock_connect,
regress/lib/libpthread/socket/1/socket1.c
158
CHECKr(pthread_create(&thread, &attr, sock_write, &fd));
regress/lib/libpthread/socket/1/socket1.c
170
CHECKr(pthread_join(thread, NULL));
regress/lib/libpthread/socket/1/socket1.c
177
pthread_t thread;
regress/lib/libpthread/socket/1/socket1.c
186
CHECKr(pthread_create(&thread, &attr, sock_accept,
regress/lib/libpthread/socket/1/socket1.c
189
CHECKr(pthread_join(thread, NULL));
regress/lib/libpthread/socket/2/socket2.c
155
CHECKr(pthread_create(&thread, NULL, sock_write, &fd));
regress/lib/libpthread/socket/2/socket2.c
178
pthread_t thread;
regress/lib/libpthread/socket/2/socket2.c
183
CHECKr(pthread_create(&thread, NULL, sock_accept,
regress/lib/libpthread/socket/2/socket2.c
186
CHECKr(pthread_join(thread, NULL));
regress/lib/libpthread/socket/2/socket2.c
94
pthread_t thread, wthread;
regress/lib/libpthread/socket/2a/socket2a.c
106
CHECKr(pthread_create(&thread, NULL, sock_connect,
regress/lib/libpthread/socket/2a/socket2a.c
108
CHECKr(pthread_join(thread, NULL));
regress/lib/libpthread/socket/2a/socket2a.c
99
pthread_t thread;
regress/lib/libpthread/switch/switch.c
106
CHECKr(pthread_create(&thread, NULL, new_thread,
regress/lib/libpthread/switch/switch.c
87
pthread_t thread;
regress/misc/sse2/foo/foo.c
31
pthread_t thread;
regress/misc/sse2/foo/foo.c
34
pthread_create(&thread, NULL, foo, NULL);
regress/sys/kern/clock_gettime/monotonicrelapse.c
37
pthread_t *thread;
regress/sys/kern/clock_gettime/monotonicrelapse.c
48
thread = calloc(nthreads, sizeof(*thread));
regress/sys/kern/clock_gettime/monotonicrelapse.c
49
if (thread == NULL)
regress/sys/kern/clock_gettime/monotonicrelapse.c
53
error = pthread_create(&thread[i], NULL, thread_func,
regress/sys/kern/futex/futex.c
46
pthread_t thread;
regress/sys/kern/futex/futex.c
70
assert(pthread_create(&thread, NULL, signaled, NULL) == 0);
regress/sys/kern/futex/futex.c
72
assert(pthread_kill(thread, SIGUSR1) == 0);
regress/sys/kern/futex/futex.c
73
assert(pthread_join(thread, NULL) == 0);
regress/sys/kern/futex/futex.c
76
assert(pthread_create(&thread, NULL, awakener, NULL) == 0);
regress/sys/kern/futex/futex.c
78
assert(pthread_join(thread, NULL) == 0);
regress/sys/kern/signal/sig-stop2/sig-stop2.c
74
if ((r = pthread_create(&pthread[i], NULL, thread, NULL))) {
regress/sys/kern/signal/sig-stop3/sig-stop3.c
51
if ((r = pthread_create(&pthread[i], NULL, thread, NULL))) {
sbin/unwind/libunbound/util/locks.c
134
void ub_thr_fork_wait(ub_thread_type thread)
sbin/unwind/libunbound/util/locks.c
137
if(waitpid((pid_t)thread, &status, 0) == -1)
sbin/unwind/libunbound/util/locks.c
138
log_err("waitpid(%d): %s", (int)thread, strerror(errno));
sbin/unwind/libunbound/util/locks.c
141
(int)thread, status);
sbin/unwind/libunbound/util/locks.h
175
#define ub_thread_join(thread) LOCKRET(pthread_join(thread, NULL))
sbin/unwind/libunbound/util/locks.h
213
#define ub_thread_join(thread) LOCKRET(thr_join(thread, NULL, NULL))
sbin/unwind/libunbound/util/locks.h
290
#define ub_thread_join(thread) ub_thr_fork_wait(thread)
sbin/unwind/libunbound/util/locks.h
291
void ub_thr_fork_wait(ub_thread_type thread);
sys/dev/acpi/acpi.c
2773
struct acpi_thread *thread = arg;
sys/dev/acpi/acpi.c
2774
struct acpi_softc *sc = thread->sc;
sys/dev/acpi/acpi.c
2811
while (thread->running) {
sys/dev/acpi/acpi.c
2830
free(thread, M_DEVBUF, sizeof(*thread));
sys/dev/dt/dt_prov_static.c
160
&_DT_STATIC_P(smr, thread),
sys/dev/dt/dt_prov_static.c
94
DT_STATIC_PROBE2(smr, thread, "uint64_t", "uint64_t");
sys/dev/ipmi.c
1509
struct ipmi_thread *thread = arg;
sys/dev/ipmi.c
1510
struct ipmi_softc *sc = thread->sc;
sys/dev/ipmi.c
1533
while (thread->running) {
sys/dev/ipmi.c
1535
tsleep_nsec(thread, PWAIT, "ipmi_poll",
sys/dev/pci/drm/amd/amdgpu/amdgpu_debugfs.c
1153
uint32_t offset, se, sh, cu, wave, simd, thread, bank, *data;
sys/dev/pci/drm/amd/amdgpu/amdgpu_debugfs.c
1165
thread = (*pos & GENMASK_ULL(59, 52)) >> 52;
sys/dev/pci/drm/amd/amdgpu/amdgpu_debugfs.c
1186
adev->gfx.funcs->read_wave_vgprs(adev, 0, simd, wave, thread, offset, size>>2, data);
sys/dev/pci/drm/amd/amdgpu/amdgpu_debugfs.c
439
adev->gfx.funcs->read_wave_vgprs(adev, rd->id.xcc_id, rd->id.simd, rd->id.wave, rd->id.gpr.thread, *pos, size>>2, data);
sys/dev/pci/drm/amd/amdgpu/amdgpu_gfx.h
341
uint32_t wave, uint32_t thread, uint32_t start,
sys/dev/pci/drm/amd/amdgpu/amdgpu_umr.h
52
u32 thread, vpgr_or_sgpr;
sys/dev/pci/drm/amd/amdgpu/gfx_v10_0.c
4486
uint32_t thread, uint32_t regno,
sys/dev/pci/drm/amd/amdgpu/gfx_v10_0.c
4492
(thread << SQ_IND_INDEX__WORKITEM_ID__SHIFT) |
sys/dev/pci/drm/amd/amdgpu/gfx_v10_0.c
4538
uint32_t wave, uint32_t thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v10_0.c
4543
adev, wave, thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v11_0.c
1031
uint32_t wave, uint32_t thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v11_0.c
1036
adev, wave, thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v11_0.c
981
uint32_t thread, uint32_t regno,
sys/dev/pci/drm/amd/amdgpu/gfx_v11_0.c
987
(thread << SQ_IND_INDEX__WORKITEM_ID__SHIFT) |
sys/dev/pci/drm/amd/amdgpu/gfx_v12_0.c
824
uint32_t thread, uint32_t regno,
sys/dev/pci/drm/amd/amdgpu/gfx_v12_0.c
830
(thread << SQ_IND_INDEX__WORKITEM_ID__SHIFT) |
sys/dev/pci/drm/amd/amdgpu/gfx_v12_0.c
887
uint32_t wave, uint32_t thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v12_0.c
892
adev, wave, thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v6_0.c
2954
uint32_t wave, uint32_t thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v6_0.c
2961
(thread << SQ_IND_INDEX__THREAD_ID__SHIFT) |
sys/dev/pci/drm/amd/amdgpu/gfx_v7_0.c
4023
uint32_t wave, uint32_t thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v7_0.c
4030
(thread << SQ_IND_INDEX__THREAD_ID__SHIFT) |
sys/dev/pci/drm/amd/amdgpu/gfx_v8_0.c
5166
uint32_t wave, uint32_t thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v8_0.c
5173
(thread << SQ_IND_INDEX__THREAD_ID__SHIFT) |
sys/dev/pci/drm/amd/amdgpu/gfx_v9_0.c
1940
uint32_t wave, uint32_t thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v9_0.c
1947
(thread << SQ_IND_INDEX__THREAD_ID__SHIFT) |
sys/dev/pci/drm/amd/amdgpu/gfx_v9_0.c
1985
uint32_t wave, uint32_t thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v9_0.c
1990
adev, simd, wave, thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v9_4_3.c
727
uint32_t wave, uint32_t thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v9_4_3.c
734
(thread << SQ_IND_INDEX__THREAD_ID__SHIFT) |
sys/dev/pci/drm/amd/amdgpu/gfx_v9_4_3.c
773
uint32_t wave, uint32_t thread,
sys/dev/pci/drm/amd/amdgpu/gfx_v9_4_3.c
777
wave_read_regs(adev, xcc_id, simd, wave, thread,
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
2906
struct task_struct *thread = NULL;
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
2925
thread = get_pid_task(pid, PIDTYPE_PID);
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
2926
if (!thread) {
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
2931
mm = get_task_mm(thread);
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
2941
create_process = thread && thread != current && ptrace_parent(thread) == current;
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
2944
target = create_process ? kfd_create_process(thread) :
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
3105
if (thread)
sys/dev/pci/drm/amd/amdkfd/kfd_chardev.c
3106
put_task_struct(thread);
sys/dev/pci/drm/amd/amdkfd/kfd_priv.h
1051
struct kfd_process *kfd_create_process(struct task_struct *thread);
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
1515
static struct kfd_process *create_process(const struct task_struct *thread)
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
1527
process->mm = thread->mm;
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
1528
process->lead_thread = thread->group_leader;
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
68
static struct kfd_process *find_process(const struct task_struct *thread,
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
71
static struct kfd_process *create_process(const struct task_struct *thread);
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
828
struct kfd_process *kfd_create_process(struct task_struct *thread)
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
833
if (!(thread->mm && mmget_not_zero(thread->mm)))
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
837
if (thread->group_leader->mm != thread->mm) {
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
838
mmput(thread->mm);
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
866
process = find_process(thread, true);
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
870
process = create_process(thread);
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
909
mmput(thread->mm);
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
914
struct kfd_process *kfd_get_process(const struct task_struct *thread)
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
918
if (!thread->mm)
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
922
if (thread->group_leader->mm != thread->mm)
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
925
process = find_process(thread, false);
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
944
static struct kfd_process *find_process(const struct task_struct *thread,
sys/dev/pci/drm/amd/amdkfd/kfd_process.c
951
p = find_process_by_mm(thread->mm);
sys/dev/pci/drm/drm_linux.c
274
struct kthread *thread = arg;
sys/dev/pci/drm/drm_linux.c
277
ret = thread->func(thread->data);
sys/dev/pci/drm/drm_linux.c
278
thread->flags |= KTHREAD_STOPPED;
sys/dev/pci/drm/drm_linux.c
279
wakeup(thread);
sys/dev/pci/drm/drm_linux.c
286
struct kthread *thread;
sys/dev/pci/drm/drm_linux.c
288
thread = malloc(sizeof(*thread), M_DRM, M_WAITOK);
sys/dev/pci/drm/drm_linux.c
289
thread->func = func;
sys/dev/pci/drm/drm_linux.c
290
thread->data = data;
sys/dev/pci/drm/drm_linux.c
291
thread->flags = 0;
sys/dev/pci/drm/drm_linux.c
293
if (kthread_create(kthread_func, thread, &thread->proc, name)) {
sys/dev/pci/drm/drm_linux.c
294
free(thread, M_DRM, sizeof(*thread));
sys/dev/pci/drm/drm_linux.c
298
LIST_INSERT_HEAD(&kthread_list, thread, next);
sys/dev/pci/drm/drm_linux.c
299
return thread->proc;
sys/dev/pci/drm/drm_linux.c
368
struct kthread *thread;
sys/dev/pci/drm/drm_linux.c
370
LIST_FOREACH(thread, &kthread_list, next) {
sys/dev/pci/drm/drm_linux.c
371
if (thread->proc == p)
sys/dev/pci/drm/drm_linux.c
374
KASSERT(thread);
sys/dev/pci/drm/drm_linux.c
376
return thread;
sys/dev/pci/drm/drm_linux.c
382
struct kthread *thread = kthread_lookup(curproc);
sys/dev/pci/drm/drm_linux.c
383
return (thread->flags & KTHREAD_SHOULDPARK);
sys/dev/pci/drm/drm_linux.c
389
struct kthread *thread = kthread_lookup(curproc);
sys/dev/pci/drm/drm_linux.c
391
while (thread->flags & KTHREAD_SHOULDPARK) {
sys/dev/pci/drm/drm_linux.c
392
thread->flags |= KTHREAD_PARKED;
sys/dev/pci/drm/drm_linux.c
393
wakeup(thread);
sys/dev/pci/drm/drm_linux.c
394
tsleep_nsec(thread, PPAUSE, "parkme", INFSLP);
sys/dev/pci/drm/drm_linux.c
395
thread->flags &= ~KTHREAD_PARKED;
sys/dev/pci/drm/drm_linux.c
402
struct kthread *thread = kthread_lookup(p);
sys/dev/pci/drm/drm_linux.c
404
while ((thread->flags & KTHREAD_PARKED) == 0) {
sys/dev/pci/drm/drm_linux.c
405
thread->flags |= KTHREAD_SHOULDPARK;
sys/dev/pci/drm/drm_linux.c
406
wake_up_process(thread->proc);
sys/dev/pci/drm/drm_linux.c
407
tsleep_nsec(thread, PPAUSE, "park", INFSLP);
sys/dev/pci/drm/drm_linux.c
414
struct kthread *thread = kthread_lookup(p);
sys/dev/pci/drm/drm_linux.c
416
thread->flags &= ~KTHREAD_SHOULDPARK;
sys/dev/pci/drm/drm_linux.c
417
wakeup(thread);
sys/dev/pci/drm/drm_linux.c
423
struct kthread *thread = kthread_lookup(curproc);
sys/dev/pci/drm/drm_linux.c
424
return (thread->flags & KTHREAD_SHOULDSTOP);
sys/dev/pci/drm/drm_linux.c
430
struct kthread *thread = kthread_lookup(p);
sys/dev/pci/drm/drm_linux.c
432
while ((thread->flags & KTHREAD_STOPPED) == 0) {
sys/dev/pci/drm/drm_linux.c
433
thread->flags |= KTHREAD_SHOULDSTOP;
sys/dev/pci/drm/drm_linux.c
435
wake_up_process(thread->proc);
sys/dev/pci/drm/drm_linux.c
436
tsleep_nsec(thread, PPAUSE, "stop", INFSLP);
sys/dev/pci/drm/drm_linux.c
438
LIST_REMOVE(thread, next);
sys/dev/pci/drm/drm_linux.c
439
free(thread, M_DRM, sizeof(*thread));
sys/dev/pci/drm/i915/gt/selftest_migrate.c
687
struct threaded_migrate *thread;
sys/dev/pci/drm/i915/gt/selftest_migrate.c
692
thread = kcalloc(n_cpus, sizeof(*thread), GFP_KERNEL);
sys/dev/pci/drm/i915/gt/selftest_migrate.c
693
if (!thread)
sys/dev/pci/drm/i915/gt/selftest_migrate.c
699
thread[i].migrate = migrate;
sys/dev/pci/drm/i915/gt/selftest_migrate.c
700
thread[i].prng =
sys/dev/pci/drm/i915/gt/selftest_migrate.c
703
tsk = kthread_run(fn, &thread[i], "igt-%d", i);
sys/dev/pci/drm/i915/gt/selftest_migrate.c
710
thread[i].tsk = tsk;
sys/dev/pci/drm/i915/gt/selftest_migrate.c
716
struct task_struct *tsk = thread[i].tsk;
sys/dev/pci/drm/i915/gt/selftest_migrate.c
727
kfree(thread);
sys/dev/pci/drm/i915/gt/selftest_slpc.c
490
struct slpc_thread *thread = container_of(work, typeof(*thread), work);
sys/dev/pci/drm/i915/gt/selftest_slpc.c
492
thread->result = run_test(thread->gt, TILE_INTERACTION);
sys/dev/pci/drm/i915/gvt/scheduler.c
1255
kthread_stop(scheduler->thread[i]);
sys/dev/pci/drm/i915/gvt/scheduler.c
1273
scheduler->thread[i] = kthread_run(workload_thread, engine,
sys/dev/pci/drm/i915/gvt/scheduler.c
1275
if (IS_ERR(scheduler->thread[i])) {
sys/dev/pci/drm/i915/gvt/scheduler.c
1277
ret = PTR_ERR(scheduler->thread[i]);
sys/dev/pci/drm/i915/gvt/scheduler.h
55
struct task_struct *thread[I915_NUM_ENGINES];
sys/dev/pci/drm/i915/selftests/i915_request.c
1465
struct parallel_thread *thread =
sys/dev/pci/drm/i915/selftests/i915_request.c
1466
container_of(work, typeof(*thread), work);
sys/dev/pci/drm/i915/selftests/i915_request.c
1467
struct intel_engine_cs *engine = thread->engine;
sys/dev/pci/drm/i915/selftests/i915_request.c
1498
thread->result = err;
sys/dev/pci/drm/i915/selftests/i915_request.c
1503
struct parallel_thread *thread =
sys/dev/pci/drm/i915/selftests/i915_request.c
1504
container_of(work, typeof(*thread), work);
sys/dev/pci/drm/i915/selftests/i915_request.c
1505
struct intel_engine_cs *engine = thread->engine;
sys/dev/pci/drm/i915/selftests/i915_request.c
1527
thread->result = err;
sys/dev/pci/drm/i915/selftests/i915_request.c
1555
struct parallel_thread *thread =
sys/dev/pci/drm/i915/selftests/i915_request.c
1556
container_of(work, typeof(*thread), work);
sys/dev/pci/drm/i915/selftests/i915_request.c
1557
struct intel_engine_cs *engine = thread->engine;
sys/dev/pci/drm/i915/selftests/i915_request.c
1570
thread->result = -ENOMEM;
sys/dev/pci/drm/i915/selftests/i915_request.c
1604
thread->result = err;
sys/dev/pci/drm/i915/selftests/i915_request.c
2965
struct p_thread *thread = container_of(work, typeof(*thread), work);
sys/dev/pci/drm/i915/selftests/i915_request.c
2966
struct perf_stats *p = &thread->p;
sys/dev/pci/drm/i915/selftests/i915_request.c
2976
thread->result = PTR_ERR(ce);
sys/dev/pci/drm/i915/selftests/i915_request.c
2983
thread->result = err;
sys/dev/pci/drm/i915/selftests/i915_request.c
3034
thread->result = err;
sys/dev/pci/drm/i915/selftests/i915_request.c
3039
struct p_thread *thread = container_of(work, typeof(*thread), work);
sys/dev/pci/drm/i915/selftests/i915_request.c
3040
struct perf_stats *p = &thread->p;
sys/dev/pci/drm/i915/selftests/i915_request.c
3051
thread->result = PTR_ERR(ce);
sys/dev/pci/drm/i915/selftests/i915_request.c
3058
thread->result = err;
sys/dev/pci/drm/i915/selftests/i915_request.c
311
struct smoke_thread *thread = container_of(work, typeof(*thread), work);
sys/dev/pci/drm/i915/selftests/i915_request.c
3111
thread->result = err;
sys/dev/pci/drm/i915/selftests/i915_request.c
3116
struct p_thread *thread = container_of(work, typeof(*thread), work);
sys/dev/pci/drm/i915/selftests/i915_request.c
3117
struct perf_stats *p = &thread->p;
sys/dev/pci/drm/i915/selftests/i915_request.c
312
struct smoketest *t = thread->t;
sys/dev/pci/drm/i915/selftests/i915_request.c
3127
thread->result = PTR_ERR(ce);
sys/dev/pci/drm/i915/selftests/i915_request.c
3134
thread->result = err;
sys/dev/pci/drm/i915/selftests/i915_request.c
3176
thread->result = err;
sys/dev/pci/drm/i915/selftests/i915_request.c
332
thread->result = -ENOMEM;
sys/dev/pci/drm/i915/selftests/i915_request.c
342
while (!READ_ONCE(thread->stop)) {
sys/dev/pci/drm/i915/selftests/i915_request.c
450
thread->result = err;
sys/kern/kern_smr.c
137
TRACEPOINT(smr, thread, TIMEVAL_TO_NSEC(&elapsed), count);
sys/kern/kern_task.c
276
struct proc *thread = curproc;
sys/kern/kern_task.c
284
if (tt->tt_thread == thread) {
usr.sbin/unbound/testcode/checklocks.c
906
checklock_thrjoin(pthread_t thread)
usr.sbin/unbound/testcode/checklocks.c
912
LOCKRET(pthread_join(thread, NULL));
usr.sbin/unbound/testcode/checklocks.h
317
void checklock_thrjoin(pthread_t thread);
usr.sbin/unbound/testcode/checklocks.h
357
#define ub_thread_join(thread) checklock_thrjoin(thread)
usr.sbin/unbound/util/locks.c
134
void ub_thr_fork_wait(ub_thread_type thread)
usr.sbin/unbound/util/locks.c
137
if(waitpid((pid_t)thread, &status, 0) == -1)
usr.sbin/unbound/util/locks.c
138
log_err("waitpid(%d): %s", (int)thread, strerror(errno));
usr.sbin/unbound/util/locks.c
141
(int)thread, status);
usr.sbin/unbound/util/locks.h
175
#define ub_thread_join(thread) LOCKRET(pthread_join(thread, NULL))
usr.sbin/unbound/util/locks.h
213
#define ub_thread_join(thread) LOCKRET(thr_join(thread, NULL, NULL))
usr.sbin/unbound/util/locks.h
290
#define ub_thread_join(thread) ub_thr_fork_wait(thread)
usr.sbin/unbound/util/locks.h
291
void ub_thr_fork_wait(ub_thread_type thread);