Lines Matching full:blocked

104 	 * Blocked signals are never ignored, since the  in sig_ignored()
108 if (sigismember(&t->blocked, sig) || sigismember(&t->real_blocked, sig)) in sig_ignored()
124 * signals, globally pending signals, and blocked signals.
126 static inline bool has_pending_signals(sigset_t *signal, sigset_t *blocked) in has_pending_signals() argument
134 ready |= signal->sig[i] &~ blocked->sig[i]; in has_pending_signals()
137 case 4: ready = signal->sig[3] &~ blocked->sig[3]; in has_pending_signals()
138 ready |= signal->sig[2] &~ blocked->sig[2]; in has_pending_signals()
139 ready |= signal->sig[1] &~ blocked->sig[1]; in has_pending_signals()
140 ready |= signal->sig[0] &~ blocked->sig[0]; in has_pending_signals()
143 case 2: ready = signal->sig[1] &~ blocked->sig[1]; in has_pending_signals()
144 ready |= signal->sig[0] &~ blocked->sig[0]; in has_pending_signals()
147 case 1: ready = signal->sig[0] &~ blocked->sig[0]; in has_pending_signals()
157 PENDING(&t->pending, &t->blocked) || in recalc_sigpending_tsk()
158 PENDING(&t->signal->shared_pending, &t->blocked) || in recalc_sigpending_tsk()
716 if (!((pending->signal.sig[0] & ~tsk->blocked.sig[0]) & SYNCHRONOUS_MASK)) in dequeue_synchronous_signal()
758 * goes through ->blocked
975 if (sigismember(&p->blocked, sig)) in wants_signal()
1306 * since we do not want to have a signal handler that was blocked
1307 * be invoked when user space had explicitly blocked it.
1316 int ret, blocked, ignored; in force_sig_info_to_task() local
1323 blocked = sigismember(&t->blocked, sig); in force_sig_info_to_task()
1324 if (blocked || ignored || sigdfl) { in force_sig_info_to_task()
1326 if (blocked) { in force_sig_info_to_task()
1327 sigdelset(&t->blocked, sig); in force_sig_info_to_task()
2055 * blocked sys_wait4 might now return -ECHILD. in do_notify_parent()
2590 /* If the (new) signal is now blocked, requeue it. */ in ptrace_signal()
2591 if (sigismember(&current->blocked, signr)) { in ptrace_signal()
2737 signr = dequeue_signal(current, &current->blocked, &ksig->info); in get_signal()
2874 * delivered. It updates the blocked signals accordingly (@ksig->ka.sa.sa_mask
2875 * is always blocked, and the signal itself is blocked unless %SA_NODEFER
2880 sigset_t blocked; in signal_delivered() local
2888 sigorsets(&blocked, &current->blocked, &ksig->ka.sa.sa_mask); in signal_delivered()
2890 sigaddset(&blocked, ksig->sig); in signal_delivered()
2891 set_current_blocked(&blocked); in signal_delivered()
2924 if (!has_pending_signals(&retarget, &t->blocked)) in retarget_shared_pending()
2927 sigandsets(&retarget, &retarget, &t->blocked); in retarget_shared_pending()
2966 unblocked = tsk->blocked; in exit_signals()
3009 /* A set of now blocked but previously unblocked signals. */ in __set_task_blocked()
3010 sigandnsets(&newblocked, newset, &current->blocked); in __set_task_blocked()
3013 tsk->blocked = *newset; in __set_task_blocked()
3018 * set_current_blocked - change current->blocked mask
3021 * It is wrong to change ->blocked directly, this helper should be used
3036 * to do. The current->blocked shouldn't be modified by other task. in __set_current_blocked()
3038 if (sigequalsets(&tsk->blocked, newset)) in __set_current_blocked()
3059 /* Lockless, only current can change ->blocked, never from irq */ in sigprocmask()
3061 *oldset = tsk->blocked; in sigprocmask()
3065 sigorsets(&newset, &tsk->blocked, set); in sigprocmask()
3068 sigandnsets(&newset, &tsk->blocked, set); in sigprocmask()
3103 current->saved_sigmask = current->blocked; in set_user_sigmask()
3123 current->saved_sigmask = current->blocked; in set_compat_user_sigmask()
3131 * sys_rt_sigprocmask - change the list of currently blocked signals
3147 old_set = current->blocked; in SYSCALL_DEFINE4()
3171 sigset_t old_set = current->blocked; in COMPAT_SYSCALL_DEFINE4()
3200 sigandsets(set, &current->blocked, set); in do_sigpending()
3205 * while blocked
3592 tsk->real_blocked = tsk->blocked; in do_sigtimedwait()
3593 sigandsets(&tsk->blocked, &tsk->blocked, &mask); in do_sigtimedwait()
4121 * whether or not it is blocked." in do_sigaction()
4126 * be discarded, whether or not it is blocked" in do_sigaction()
4310 * sys_sigprocmask - examine and change blocked signals
4325 old_set = current->blocked.sig[0]; in SYSCALL_DEFINE3()
4331 new_blocked = current->blocked; in SYSCALL_DEFINE3()
4524 return current->blocked.sig[0]; in SYSCALL_DEFINE0()
4529 int old = current->blocked.sig[0]; in SYSCALL_DEFINE1()
4573 current->saved_sigmask = current->blocked; in sigsuspend()
4621 sigset_t blocked; in SYSCALL_DEFINE1() local
4622 siginitset(&blocked, mask); in SYSCALL_DEFINE1()
4623 return sigsuspend(&blocked); in SYSCALL_DEFINE1()
4629 sigset_t blocked; in SYSCALL_DEFINE3() local
4630 siginitset(&blocked, mask); in SYSCALL_DEFINE3()
4631 return sigsuspend(&blocked); in SYSCALL_DEFINE3()