Home
last modified time | relevance | path

Searched refs:ulwp (Results 1 – 17 of 17) sorted by relevance

/illumos-gate/usr/src/lib/libc/port/threads/
H A Dthr.c553 if (ulwp && ulwp->ul_dead) { in find_lwp()
632 ulwp->ul_self = ulwp; in _thrp_create()
1717 for (ulwp = udp->lwp_stacks; ulwp != NULL; ulwp = ulwp->ul_next) in postfork1_child()
1719 for (ulwp = udp->ulwp_freelist; ulwp != NULL; ulwp = ulwp->ul_next) in postfork1_child()
1904 while (ulwp && !ulwp->ul_dead && !ulwp->ul_stop && in safe_suspend()
1908 ulwp != NULL; ulwp = ulwp->ul_hash) { in safe_suspend()
2073 for (ulwp = self->ul_forw; ulwp != self; ulwp = ulwp->ul_forw) { in suspend_fork()
2105 for (ulwp = self->ul_forw; ulwp != self; ulwp = ulwp->ul_forw) { in continue_fork()
2116 for (ulwp = self->ul_forw; ulwp != self; ulwp = ulwp->ul_forw) { in continue_fork()
2796 for (ulwp = self->ul_forw; ulwp != self; ulwp = ulwp->ul_forw) { in thr_suspend_allmutators()
[all …]
H A Dpthread.c52 ulwp_t *ulwp; in _thr_setinherit() local
68 ulwp_t *ulwp; in _thr_setparam() local
77 ulwp->ul_epri != 0) { in _thr_setparam()
82 if (prio > ulwp->ul_epri) in _thr_setparam()
85 ulwp->ul_pri = prio; in _thr_setparam()
91 ulwp->ul_cid = cid; in _thr_setparam()
92 ulwp->ul_pri = prio; in _thr_setparam()
161 ulwp->ul_detached = 1; in pthread_create()
232 ulwp_t *ulwp; in pthread_getschedparam() local
242 } else if (*policy == ulwp->ul_policy && cid == ulwp->ul_cid && in pthread_getschedparam()
[all …]
H A Dsynch.c509 ulwp_t *ulwp; in QVERIFY() local
530 for (prev = NULL, ulwp = qrp->qr_head; ulwp != NULL; in QVERIFY()
531 prev = ulwp, ulwp = ulwp->ul_link) { in QVERIFY()
609 #define CMP_PRIO(ulwp) ((real_priority(ulwp) << 1) + (ulwp)->ul_writer) argument
702 ulwp->ul_schedctl->sc_cid == ulwp->ul_rtclassid) | in enqueue()
718 ulwp_t *ulwp; in queue_slot_runnable() local
726 prev = ulwp, ulwpp = &ulwp->ul_link) { in queue_slot_runnable()
755 for (prev = ulwp, ulwpp = &ulwp->ul_link; in queue_slot_rt()
757 prev = ulwp, ulwpp = &ulwp->ul_link) { in queue_slot_rt()
785 ulwp_t *ulwp; in queue_slot() local
[all …]
H A Dcancel.c40 ulwp_t *ulwp; in pthread_cancel() local
43 if ((ulwp = find_lwp(tid)) == NULL) in pthread_cancel()
46 if (ulwp->ul_cancel_pending) { in pthread_cancel()
50 ulwp_unlock(ulwp, udp); in pthread_cancel()
51 } else if (ulwp == self) { in pthread_cancel()
63 } else if (ulwp->ul_cancel_disabled) { in pthread_cancel()
71 ulwp->ul_cancel_pending = 1; in pthread_cancel()
72 ulwp_unlock(ulwp, udp); in pthread_cancel()
78 ulwp_unlock(ulwp, udp); in pthread_cancel()
H A Dsema.c134 ulwp_t *ulwp; in sema_wait_impl() local
165 if ((ulwp = dequeue(qp, &more)) != NULL) { in sema_wait_impl()
167 lwpid = ulwp->ul_lwpid; in sema_wait_impl()
252 ulwp_t *ulwp; in sema_trywait() local
260 if ((ulwp = dequeue(qp, &more)) != NULL) { in sema_trywait()
262 lwpid = ulwp->ul_lwpid; in sema_trywait()
319 ulwp_t *ulwp; in sema_post() local
327 if ((ulwp = dequeue(qp, &more)) != NULL) { in sema_post()
329 lwpid = ulwp->ul_lwpid; in sema_post()
H A Drwlock.c121 rwl_free(ulwp_t *ulwp) in rwl_free() argument
127 ulwp->ul_rdlockcnt = 0; in rwl_free()
129 ulwp->ul_readlock.single.rd_count = 0; in rwl_free()
380 ulwp_t *ulwp; in rw_queue_release() local
437 ulwp = *ulwpp; in rw_queue_release()
438 ASSERT(ulwp->ul_wchan == rwlp); in rw_queue_release()
439 if (ulwp->ul_writer) { in rw_queue_release()
453 ulwp->ul_sleepq = NULL; in rw_queue_release()
454 ulwp->ul_wchan = NULL; in rw_queue_release()
463 lwpid[nlwpid++] = ulwp->ul_lwpid; in rw_queue_release()
[all …]
H A Dtls.c433 tls_free(ulwp_t *ulwp) in tls_free() argument
441 if ((tlsent = ulwp->ul_tlsent) == NULL || in tls_free()
442 (ntlsent = ulwp->ul_ntlsent) == 0) in tls_free()
452 lfree(ulwp->ul_tlsent, ntlsent * sizeof (tls_t)); in tls_free()
453 ulwp->ul_tlsent = NULL; in tls_free()
454 ulwp->ul_ntlsent = 0; in tls_free()
H A Dtsd.c442 tsd_free(ulwp_t *ulwp) in tsd_free() argument
448 if ((stsd = ulwp->ul_stsd) != NULL) in tsd_free()
450 ulwp->ul_stsd = NULL; in tsd_free()
/illumos-gate/usr/src/cmd/mdb/common/modules/libc/
H A Dlibc.c451 ulwp_t ulwp; in d_ulwp() local
456 if (mdb_vread(&ulwp, sizeof (ulwp), addr) != sizeof (ulwp) && in d_ulwp()
457 (bzero(&ulwp, sizeof (ulwp)), in d_ulwp()
509 ulwp.ul_ix, in d_ulwp()
511 ulwp.ul_pri, in d_ulwp()
512 ulwp.ul_epri, in d_ulwp()
514 ulwp.ul_cid); in d_ulwp()
556 ulwp.ul_rt, in d_ulwp()
947 ulwp_t ulwp; in ulwp_walk_step() local
951 if (mdb_vread(&ulwp, sizeof (ulwp), addr) != sizeof (ulwp) && in ulwp_walk_step()
[all …]
H A Dfindstack_subr.c185 stacks_ulwp_walk(uintptr_t addr, ulwp_t *ulwp, void *ignored) in stacks_ulwp_walk() argument
189 sulwp->sulwp_id = ulwp->ul_lwpid; in stacks_ulwp_walk()
193 mdb_warn("found multiple LWPs with ID %d!", ulwp->ul_lwpid); in stacks_ulwp_walk()
226 ulwp_t ulwp; in stacks_findstack() local
255 if (mdb_vread(&ulwp, sizeof (ulwp), sulwp->sulwp_addr) == -1) { in stacks_findstack()
261 fsip->fsi_tstate = ulwp.ul_sleepq != NULL; in stacks_findstack()
262 fsip->fsi_sobj_ops = (uintptr_t)(ulwp.ul_sleepq == NULL ? 0 : in stacks_findstack()
263 (ulwp.ul_qtype == MX ? STACKS_SOBJ_MX : STACKS_SOBJ_CV)); in stacks_findstack()
/illumos-gate/usr/src/lib/libc/sparc/threads/
H A Dmachdep.c64 ulwp_t *ulwp, caddr_t stk, size_t stksize) in setup_context() argument
83 ucp->uc_mcontext.gregs[REG_O0] = (greg_t)ulwp; in setup_context()
86 ucp->uc_mcontext.gregs[REG_G7] = (greg_t)ulwp; in setup_context()
119 _fpinherit(ulwp_t *ulwp) in _fpinherit() argument
133 _getfsr(&ulwp->ul_fpuenv.fsr); in _fpinherit()
134 ulwp->ul_fpuenv.fpu_en = 1; in _fpinherit()
136 ulwp->ul_fpuenv.fpu_en = 0; in _fpinherit()
141 getgregs(ulwp_t *ulwp, gregset_t rs) in getgregs() argument
145 if (getlwpstatus(ulwp->ul_lwpid, &status) == 0) { in getgregs()
165 setgregs(ulwp_t *ulwp, gregset_t rs) in setgregs() argument
[all …]
/illumos-gate/usr/src/lib/libc_db/common/
H A Dthread_db.c1013 ulwp_t ulwp; in __td_ta_thr_iter() local
1016 &ulwp, sizeof (ulwp)) != PS_OK && in __td_ta_thr_iter()
1017 ((void) memset(&ulwp, 0, sizeof (ulwp)), in __td_ta_thr_iter()
1040 &ulwp, sizeof (ulwp)) != PS_OK && in __td_ta_thr_iter()
1041 ((void) memset(&ulwp, 0, sizeof (ulwp)), in __td_ta_thr_iter()
1419 ulwp_t ulwp; in __td_thr_get_info() local
1421 if (ps_pdread(ph_p, psaddr, &ulwp, sizeof (ulwp)) != PS_OK && in __td_thr_get_info()
1422 ((void) memset(&ulwp, 0, sizeof (ulwp)), in __td_thr_get_info()
1429 ulwp32_t ulwp; in __td_thr_get_info() local
1431 if (ps_pdread(ph_p, psaddr, &ulwp, sizeof (ulwp)) != PS_OK && in __td_thr_get_info()
[all …]
/illumos-gate/usr/src/lib/libc/amd64/threads/
H A Dmachdep.c69 ulwp_t *ulwp, caddr_t stk, size_t stksize) in setup_context() argument
77 ucp->uc_mcontext.gregs[REG_FSBASE] = (greg_t)ulwp; in setup_context()
87 if ((stack = setup_top_frame(stk, stksize, ulwp)) == NULL) in setup_context()
92 ucp->uc_mcontext.gregs[REG_RDI] = (greg_t)ulwp; in setup_context()
123 _fpinherit(ulwp_t *ulwp) in _fpinherit() argument
125 ulwp->ul_fpuenv.ftag = 0xffffffff; in _fpinherit()
129 getgregs(ulwp_t *ulwp, gregset_t rs) in getgregs() argument
133 if (getlwpstatus(ulwp->ul_lwpid, &status) == 0) { in getgregs()
155 setgregs(ulwp_t *ulwp, gregset_t rs) in setgregs() argument
159 if (getlwpstatus(ulwp->ul_lwpid, &status) == 0) { in setgregs()
[all …]
/illumos-gate/usr/src/lib/libc/i386/threads/
H A Dmachdep.c49 setup_top_frame(void *stk, size_t stksize, ulwp_t *ulwp) in setup_top_frame() argument
80 frame.arg = (uint32_t)ulwp; in setup_top_frame()
89 ulwp_t *ulwp, caddr_t stk, size_t stksize) in setup_context() argument
126 ucp->uc_mcontext.gregs[ESP] = (greg_t)ulwp; in setup_context()
168 _fpinherit(ulwp_t *ulwp) in _fpinherit() argument
170 ulwp->ul_fpuenv.ftag = 0xffffffff; in _fpinherit()
174 getgregs(ulwp_t *ulwp, gregset_t rs) in getgregs() argument
178 if (getlwpstatus(ulwp->ul_lwpid, &status) == 0) { in getgregs()
196 setgregs(ulwp_t *ulwp, gregset_t rs) in setgregs() argument
200 if (getlwpstatus(ulwp->ul_lwpid, &status) == 0) { in setgregs()
[all …]
/illumos-gate/usr/src/lib/libc/inc/
H A Dthr_uberdata.h369 struct ulwp *qr_head;
370 struct ulwp *qr_tail;
448 extern struct ulwp **queue_slot(queue_head_t *, struct ulwp **, int *);
452 struct ulwp **, struct ulwp *);
544 typedef struct ulwp { struct
1004 #define ulwp_mutex(ulwp, udp) \ argument
1006 #define ulwp_condvar(ulwp, udp) \ argument
1012 #define ulwp_lock(ulwp, udp) lmutex_lock(ulwp_mutex(ulwp, udp)) argument
1013 #define ulwp_unlock(ulwp, udp) lmutex_unlock(ulwp_mutex(ulwp, udp)) argument
1267 #define real_priority(ulwp) \ argument
[all …]
H A Dtdb_agent.h264 #define __td_event_report(ulwp, event, udp) \ argument
265 (((ulwp)->ul_td_events_enable && \
266 td_eventismember(&(ulwp)->ul_td_evbuf.eventmask, (event))) || \
/illumos-gate/usr/src/cmd/mdb/common/modules/libumem/
H A Dlibumem.c154 umastat_lwp_cache(uintptr_t addr, const umem_cache_t *cp, ulwp_t *ulwp) in umastat_lwp_cache() argument
166 &nbufs, (uintptr_t)ulwp->ul_self) == -1) { in umastat_lwp_cache()
171 mdb_printf("%3d ", ulwp->ul_tmem.tm_size ? in umastat_lwp_cache()
172 (nbufs * cp->cache_bufsize * 100) / ulwp->ul_tmem.tm_size : 0); in umastat_lwp_cache()
179 umastat_lwp(uintptr_t addr, const ulwp_t *ulwp, void *ignored) in umastat_lwp() argument
184 mdb_printf((dfp++)->fmt, ulwp->ul_lwpid); in umastat_lwp()
185 mdb_printf((dfp++)->fmt, ulwp->ul_tmem.tm_size); in umastat_lwp()
192 mdb_printf((dfp++)->fmt, (ulwp->ul_tmem.tm_size * 100) / size); in umastat_lwp()
195 (mdb_walk_cb_t)umastat_lwp_cache, (void *)ulwp) == -1) { in umastat_lwp()