Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 11919
b: refs/heads/master
c: b0423a0
h: refs/heads/master
i:
  11917: 906b80b
  11915: 8d3abd9
  11911: ff260eb
  11903: 06145c4
v: v3
  • Loading branch information
Paul E. McKenney authored and Linus Torvalds committed Oct 31, 2005
1 parent 67fdb8e commit ad7bdc4
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 12 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: ae6866c377943de73e2c95398ff0120516f167ce
refs/heads/master: b0423a0d9cc836b2c3d796623cd19236bfedfe63
16 changes: 5 additions & 11 deletions trunk/kernel/signal.c
Original file line number Diff line number Diff line change
Expand Up @@ -879,11 +879,13 @@ force_sig_info(int sig, struct siginfo *info, struct task_struct *t)
int ret;

spin_lock_irqsave(&t->sighand->siglock, flags);
if (sigismember(&t->blocked, sig) || t->sighand->action[sig-1].sa.sa_handler == SIG_IGN) {
if (t->sighand->action[sig-1].sa.sa_handler == SIG_IGN) {
t->sighand->action[sig-1].sa.sa_handler = SIG_DFL;
}
if (sigismember(&t->blocked, sig)) {
sigdelset(&t->blocked, sig);
recalc_sigpending_tsk(t);
}
recalc_sigpending_tsk(t);
ret = specific_send_sig_info(sig, info, t);
spin_unlock_irqrestore(&t->sighand->siglock, flags);

Expand All @@ -893,15 +895,7 @@ force_sig_info(int sig, struct siginfo *info, struct task_struct *t)
void
force_sig_specific(int sig, struct task_struct *t)
{
unsigned long int flags;

spin_lock_irqsave(&t->sighand->siglock, flags);
if (t->sighand->action[sig-1].sa.sa_handler == SIG_IGN)
t->sighand->action[sig-1].sa.sa_handler = SIG_DFL;
sigdelset(&t->blocked, sig);
recalc_sigpending_tsk(t);
specific_send_sig_info(sig, SEND_SIG_FORCED, t);
spin_unlock_irqrestore(&t->sighand->siglock, flags);
force_sig_info(sig, SEND_SIG_FORCED, t);
}

/*
Expand Down

0 comments on commit ad7bdc4

Please sign in to comment.