aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/signal.c
diff options
context:
space:
mode:
authorOleg Nesterov <oleg@tv-sign.ru>2008-04-30 03:52:36 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-30 11:29:33 -0400
commit573cf9ad72c13750e86c91de43477e9dfb440523 (patch)
tree7b7fab20559e2e96ec7e8aeefb156b35ee2c6c55 /kernel/signal.c
parent2acb024d5524eda305523c1d6061fe5ef1949165 (diff)
signals: do_signal_stop(): use signal_group_exit()
do_signal_stop() needs signal_group_exit() but checks sig->group_exit_task. This (optimization) is correct, SIGNAL_STOP_DEQUEUED and SIGNAL_GROUP_EXIT are mutually exclusive, but looks confusing. Use signal_group_exit(), this is not fastpath, the code clarity is more important. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Cc: Roland McGrath <roland@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/signal.c')
-rw-r--r--kernel/signal.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/signal.c b/kernel/signal.c
index fb8ffd468854..29aca40be33f 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -1717,7 +1717,7 @@ static int do_signal_stop(int signr)
1717 struct task_struct *t; 1717 struct task_struct *t;
1718 1718
1719 if (!likely(sig->flags & SIGNAL_STOP_DEQUEUED) || 1719 if (!likely(sig->flags & SIGNAL_STOP_DEQUEUED) ||
1720 unlikely(sig->group_exit_task)) 1720 unlikely(signal_group_exit(sig)))
1721 return 0; 1721 return 0;
1722 /* 1722 /*
1723 * There is no group stop already in progress. 1723 * There is no group stop already in progress.