Lines Matching refs:ucp
71 static void check_cancel(struct pthread *curthread, ucontext_t *ucp);
188 sigcancel_handler(int sig __unused, siginfo_t *info __unused, ucontext_t *ucp) in sigcancel_handler() argument
197 check_cancel(curthread, ucp); in sigcancel_handler()
211 ucontext_t *ucp; in thr_sighandler() local
218 ucp = _ucp; in thr_sighandler()
236 curthread->deferred_sigmask = ucp->uc_sigmask; in thr_sighandler()
238 ucp->uc_sigmask = _thr_deferset; in thr_sighandler()
242 handle_signal(&act, sig, info, ucp); in thr_sighandler()
246 handle_signal(struct sigaction *actp, int sig, siginfo_t *info, ucontext_t *ucp) in handle_signal() argument
257 SIGSETOR(actp->sa_mask, ucp->uc_sigmask); in handle_signal()
296 sigfunc(sig, info, ucp); in handle_signal()
299 (struct sigcontext *)ucp, info->si_addr, in handle_signal()
308 SIGDELSET(ucp->uc_sigmask, SIGCANCEL); in handle_signal()
311 check_cancel(curthread, ucp); in handle_signal()
328 check_cancel(struct pthread *curthread, ucontext_t *ucp) in check_cancel() argument
357 if (ucp != NULL) { in check_cancel()
358 SIGADDSET(ucp->uc_sigmask, SIGCANCEL); in check_cancel()
369 _pthread_exit_mask(PTHREAD_CANCELED, ucp != NULL ? in check_cancel()
370 &ucp->uc_sigmask : NULL); in check_cancel()
784 __thr_setcontext(const ucontext_t *ucp) in __thr_setcontext() argument
788 if (ucp == NULL) { in __thr_setcontext()
792 if (!SIGISMEMBER(ucp->uc_sigmask, SIGCANCEL)) in __thr_setcontext()
793 return (__sys_setcontext(ucp)); in __thr_setcontext()
794 (void) memcpy(&uc, ucp, sizeof(uc)); in __thr_setcontext()
800 __thr_swapcontext(ucontext_t *oucp, const ucontext_t *ucp) in __thr_swapcontext() argument
804 if (oucp == NULL || ucp == NULL) { in __thr_swapcontext()
808 if (SIGISMEMBER(ucp->uc_sigmask, SIGCANCEL)) { in __thr_swapcontext()
809 (void) memcpy(&uc, ucp, sizeof(uc)); in __thr_swapcontext()
811 ucp = &uc; in __thr_swapcontext()
813 return (__sys_swapcontext(oucp, ucp)); in __thr_swapcontext()