diff options
author | Oleg Nesterov <oleg@tv-sign.ru> | 2008-04-30 03:52:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-30 11:29:33 -0400 |
commit | 573cf9ad72c13750e86c91de43477e9dfb440523 (patch) | |
tree | 7b7fab20559e2e96ec7e8aeefb156b35ee2c6c55 /kernel/signal.c | |
parent | 2acb024d5524eda305523c1d6061fe5ef1949165 (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.c | 2 |
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. |