Home
last modified time | relevance | path

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

/titanic_44/usr/src/lib/libc/port/threads/
H A Dthr.c177 hash_in_unlocked(ulwp_t *ulwp, int ix, uberdata_t *udp) in hash_in_unlocked() argument
179 ulwp->ul_hash = udp->thr_hash_table[ix].hash_bucket; in hash_in_unlocked()
180 udp->thr_hash_table[ix].hash_bucket = ulwp; in hash_in_unlocked()
181 ulwp->ul_ix = ix; in hash_in_unlocked()
185 hash_in(ulwp_t *ulwp, uberdata_t *udp) in hash_in() argument
187 int ix = TIDHASH(ulwp->ul_lwpid, udp); in hash_in()
191 hash_in_unlocked(ulwp, ix, udp); in hash_in()
199 hash_out_unlocked(ulwp_t *ulwp, int ix, uberdata_t *udp) in hash_out_unlocked() argument
204 ulwp != *ulwpp; in hash_out_unlocked()
207 *ulwpp = ulwp->ul_hash; in hash_out_unlocked()
[all …]
H A Dpthread.c51 ulwp_t *ulwp; in _thr_setparam() local
55 if ((ulwp = find_lwp(tid)) == NULL) { in _thr_setparam()
58 if (policy == ulwp->ul_policy && in _thr_setparam()
60 ulwp->ul_epri != 0) { in _thr_setparam()
65 if (prio > ulwp->ul_epri) in _thr_setparam()
68 ulwp->ul_pri = prio; in _thr_setparam()
73 ulwp->ul_rtclassid = cid; in _thr_setparam()
74 ulwp->ul_cid = cid; in _thr_setparam()
75 ulwp->ul_pri = prio; in _thr_setparam()
77 ulwp->ul_policy = policy; in _thr_setparam()
[all …]
H A Dsynch.c507 ulwp_t *ulwp; in QVERIFY() local
528 for (prev = NULL, ulwp = qrp->qr_head; ulwp != NULL; in QVERIFY()
529 prev = ulwp, ulwp = ulwp->ul_link) { in QVERIFY()
531 if (ulwp->ul_writer) in QVERIFY()
533 ASSERT(ulwp->ul_qtype == qtype); in QVERIFY()
534 ASSERT(ulwp->ul_wchan != NULL); in QVERIFY()
535 ASSERT(ulwp->ul_sleepq == qp); in QVERIFY()
536 wchan = ulwp->ul_wchan; in QVERIFY()
607 #define CMP_PRIO(ulwp) ((real_priority(ulwp) << 1) + (ulwp)->ul_writer) argument
610 enqueue(queue_head_t *qp, ulwp_t *ulwp, int force_fifo) in enqueue() argument
[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.c137 ulwp_t *ulwp; in sema_wait_impl() local
168 if ((ulwp = dequeue(qp, &more)) != NULL) { in sema_wait_impl()
170 lwpid = ulwp->ul_lwpid; in sema_wait_impl()
255 ulwp_t *ulwp; in sema_trywait() local
263 if ((ulwp = dequeue(qp, &more)) != NULL) { in sema_trywait()
265 lwpid = ulwp->ul_lwpid; in sema_trywait()
322 ulwp_t *ulwp; in sema_post() local
330 if ((ulwp = dequeue(qp, &more)) != NULL) { in sema_post()
332 lwpid = ulwp->ul_lwpid; in sema_post()
H A Drwlock.c120 rwl_free(ulwp_t *ulwp) in rwl_free() argument
124 if ((nlocks = ulwp->ul_rdlockcnt) != 0) in rwl_free()
125 lfree(ulwp->ul_readlock.array, nlocks * sizeof (readlock_t)); in rwl_free()
126 ulwp->ul_rdlockcnt = 0; in rwl_free()
127 ulwp->ul_readlock.single.rd_rwlock = NULL; in rwl_free()
128 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()
[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.c444 tsd_free(ulwp_t *ulwp) in tsd_free() argument
450 if ((stsd = ulwp->ul_stsd) != NULL) in tsd_free()
452 ulwp->ul_stsd = NULL; in tsd_free()
/titanic_44/usr/src/cmd/mdb/common/modules/libc/
H A Dlibc.c447 ulwp_t ulwp; in d_ulwp() local
452 if (mdb_vread(&ulwp, sizeof (ulwp), addr) != sizeof (ulwp) && in d_ulwp()
453 (bzero(&ulwp, sizeof (ulwp)), in d_ulwp()
454 mdb_vread(&ulwp, REPLACEMENT_SIZE, addr)) != REPLACEMENT_SIZE) { in d_ulwp()
464 prt_addr(ulwp.ul_self, 1), in d_ulwp()
465 prt_addr(ulwp.ul_uberdata, 0)); in d_ulwp()
470 prt_addr(ulwp.ul_tlsent, 1), in d_ulwp()
471 ulwp.ul_ntlsent); in d_ulwp()
476 prt_addr(ulwp.ul_forw, 1), in d_ulwp()
477 prt_addr(ulwp.ul_back, 1), in d_ulwp()
[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 ? NULL : in stacks_findstack()
263 (ulwp.ul_qtype == MX ? STACKS_SOBJ_MX : STACKS_SOBJ_CV)); in stacks_findstack()
/titanic_44/usr/src/lib/libc/sparc/threads/
H A Dmachdep.c38 setup_top_frame(void *stk, size_t stksize, ulwp_t *ulwp) in setup_top_frame() argument
64 ulwp_t *ulwp, caddr_t stk, size_t stksize) in setup_context() argument
75 if ((stack = (uintptr_t)setup_top_frame(stk, stksize, ulwp)) == NULL) in setup_context()
82 ucp->uc_mcontext.gregs[REG_O0] = (greg_t)ulwp; in setup_context()
85 ucp->uc_mcontext.gregs[REG_G7] = (greg_t)ulwp; in setup_context()
118 _fpinherit(ulwp_t *ulwp) in _fpinherit() argument
132 _getfsr(&ulwp->ul_fpuenv.fsr); in _fpinherit()
133 ulwp->ul_fpuenv.fpu_en = 1; in _fpinherit()
135 ulwp->ul_fpuenv.fpu_en = 0; in _fpinherit()
140 getgregs(ulwp_t *ulwp, gregset_t rs) in getgregs() argument
[all …]
/titanic_44/usr/src/lib/libc_db/common/
H A Dthread_db.c986 ulwp_t ulwp; in __td_ta_thr_iter() local
989 &ulwp, sizeof (ulwp)) != PS_OK && in __td_ta_thr_iter()
990 ((void) memset(&ulwp, 0, sizeof (ulwp)), in __td_ta_thr_iter()
992 &ulwp, REPLACEMENT_SIZE)) != PS_OK) { in __td_ta_thr_iter()
996 next_lwp_addr = (psaddr_t)ulwp.ul_forw; in __td_ta_thr_iter()
998 ts_state = ulwp.ul_dead? TD_THR_ZOMBIE : in __td_ta_thr_iter()
999 ulwp.ul_stop? TD_THR_STOPPED : in __td_ta_thr_iter()
1000 ulwp.ul_wchan? TD_THR_SLEEP : in __td_ta_thr_iter()
1002 userpri = ulwp.ul_pri; in __td_ta_thr_iter()
1003 userflags = ulwp.ul_usropts; in __td_ta_thr_iter()
[all …]
/titanic_44/usr/src/lib/libc/amd64/threads/
H A Dmachdep.c37 setup_top_frame(void *stk, size_t stksize, ulwp_t *ulwp) in setup_top_frame() argument
69 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
[all …]
/titanic_44/usr/src/lib/libc/i386/threads/
H A Dmachdep.c48 setup_top_frame(void *stk, size_t stksize, ulwp_t *ulwp) in setup_top_frame() argument
79 frame.arg = (uint32_t)ulwp; in setup_top_frame()
88 ulwp_t *ulwp, caddr_t stk, size_t stksize) in setup_context() argument
125 ucp->uc_mcontext.gregs[ESP] = (greg_t)ulwp; in setup_context()
132 if ((stack = setup_top_frame(stk, stksize, ulwp)) == NULL) in setup_context()
167 _fpinherit(ulwp_t *ulwp) in _fpinherit() argument
169 ulwp->ul_fpuenv.ftag = 0xffffffff; in _fpinherit()
173 getgregs(ulwp_t *ulwp, gregset_t rs) in getgregs() argument
177 if (getlwpstatus(ulwp->ul_lwpid, &status) == 0) { in getgregs()
195 setgregs(ulwp_t *ulwp, gregset_t rs) in setgregs() argument
[all …]
/titanic_44/usr/src/lib/libc/inc/
H A Dthr_uberdata.h366 struct ulwp *qr_head;
367 struct ulwp *qr_tail;
443 extern void enqueue(queue_head_t *, struct ulwp *, int);
444 extern struct ulwp *dequeue(queue_head_t *, int *);
445 extern struct ulwp **queue_slot(queue_head_t *, struct ulwp **, int *);
446 extern struct ulwp *queue_waiter(queue_head_t *);
449 struct ulwp **, struct ulwp *);
538 typedef struct ulwp { struct
551 struct ulwp *ul_self; /* pointer to self */ argument
559 struct ulwp *ul_forw; /* forw, back all_lwps list, */ argument
[all …]
H A Dtdb_agent.h266 #define __td_event_report(ulwp, event, udp) \ argument
267 (((ulwp)->ul_td_events_enable && \
268 td_eventismember(&(ulwp)->ul_td_evbuf.eventmask, (event))) || \
/titanic_44/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()