4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
23 * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
24 * Use is subject to license terms.
33 * __lwp_create(ucontext_t *uc, unsigned long flags, lwpid_t *lwpidp)
36 SYSTRAP_RVAL1
(lwp_create
)
39 SET_SIZE
(__lwp_create
)
43 * _lwp_continue(lwpid_t lwpid)
46 SYSTRAP_RVAL1
(lwp_continue
)
49 SET_SIZE
(_lwp_continue
)
53 * ___lwp_suspend(lwpid_t lwpid)
55 SYSREENTRY
(___lwp_suspend
)
56 SYSTRAP_RVAL1
(lwp_suspend
)
57 SYSINTR_RESTART
(.restart____lwp_suspend)
59 SET_SIZE
(___lwp_suspend
)
63 * _lwp_kill(lwpid_t lwpid, int sig)
66 SYSTRAP_RVAL1
(lwp_kill
)
76 SYSTRAP_RVAL1
(lwp_self
)
82 * __lwp_wait(lwpid_t lwpid, lwpid_t *departed)
85 SYSTRAP_RVAL1
(lwp_wait
)
92 * __lwp_detach(lwpid_t lwpid)
95 SYSTRAP_RVAL1
(lwp_detach
)
98 SET_SIZE
(__lwp_detach
)
101 * The ___lwp_mutex_timedlock() and ___lwp_mutex_wakeup() functions
102 * are called while holding non-preemptive spin locks and we must
103 * not call out of the library while holding such locks in order
104 * to avoid invoking the dynamic linker. For this reason, these
105 * functions must never become exported symbols from the library.
110 * ___lwp_mutex_timedlock(lwp_mutex_t *, timespec_t *, uintptr_t)
112 SYSREENTRY
(___lwp_mutex_timedlock
)
113 SYSTRAP_RVAL1
(lwp_mutex_timedlock
)
114 SYSINTR_RESTART
(.restart____lwp_mutex_timedlock)
116 SET_SIZE
(___lwp_mutex_timedlock
)
120 * ___lwp_mutex_wakeup(lwp_mutex_t *mp, int)
122 ENTRY
(___lwp_mutex_wakeup
)
123 SYSTRAP_RVAL1
(lwp_mutex_wakeup
)
126 SET_SIZE
(___lwp_mutex_wakeup
)
130 * _lwp_cond_broadcast(lwp_cond_t *cvp)
132 ENTRY
(_lwp_cond_broadcast
)
133 SYSTRAP_RVAL1
(lwp_cond_broadcast
)
136 SET_SIZE
(_lwp_cond_broadcast
)
140 * ___lwp_cond_wait(lwp_cond_t *, lwp_mutex_t *, timespec_t *, int)
142 ENTRY
(___lwp_cond_wait
)
143 SYSTRAP_RVAL1
(lwp_cond_wait
)
146 SET_SIZE
(___lwp_cond_wait
)
150 * _lwp_cond_signal(lwp_cond_t *cvp)
152 ENTRY
(_lwp_cond_signal
)
153 SYSTRAP_RVAL1
(lwp_cond_signal
)
156 SET_SIZE
(_lwp_cond_signal
)
160 * ___lwp_sema_timedwait(lwp_sema_t *, timespec_t *, int check_park)
162 ENTRY
(___lwp_sema_timedwait
)
163 SYSTRAP_RVAL1
(lwp_sema_timedwait
)
166 SET_SIZE
(___lwp_sema_timedwait
)
170 * _lwp_sema_trywait(lwp_sema_t *sp)
172 ENTRY
(_lwp_sema_trywait
)
173 SYSTRAP_RVAL1
(lwp_sema_trywait
)
176 SET_SIZE
(_lwp_sema_trywait
)
180 * _lwp_sema_post(lwp_sema_t *sp)
182 ENTRY
(_lwp_sema_post
)
183 SYSTRAP_RVAL1
(lwp_sema_post
)
186 SET_SIZE
(_lwp_sema_post
)
190 * _lwp_info(struct lwpinfo *infop)
193 SYSTRAP_RVAL1
(lwp_info
)
202 SYSCALL2_RVAL1
(__schedctl
,schedctl
)
208 * ___lwp_mutex_trylock(lwp_mutex_t *mp, uintptr_t)
210 ENTRY
(___lwp_mutex_trylock
)
211 SYSTRAP_RVAL1
(lwp_mutex_trylock
)
214 SET_SIZE
(___lwp_mutex_trylock
)
218 * ___lwp_mutex_unlock(lwp_mutex_t *mp)
220 ENTRY
(___lwp_mutex_unlock
)
221 SYSTRAP_RVAL1
(lwp_mutex_unlock
)
224 SET_SIZE
(___lwp_mutex_unlock
)
228 * ___lwp_mutex_register(lwp_mutex_t *mp, lwp_mutex_t **uaddr)
230 ENTRY
(___lwp_mutex_register
)
231 SYSTRAP_RVAL1
(lwp_mutex_register
)
234 SET_SIZE
(___lwp_mutex_register
)