aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOleg Nesterov <oleg@tv-sign.ru>2006-03-28 19:11:22 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-28 21:36:43 -0500
commit6108ccd3e2f3012d5eec582e0af4d75e693824da (patch)
tree944465dbb375e98b628e799794ca60b8e0bed61e
parent7d7185c818925ba5fe90efa75840d0b415032774 (diff)
[PATCH] relax sig_needs_tasklist()
handle_stop_signal() does not need tasklist_lock for SIG_KERNEL_STOP_MASK signals anymore. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--kernel/signal.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/kernel/signal.c b/kernel/signal.c
index 6ea49f742a2f..e99ec2f891a0 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -146,8 +146,7 @@ static kmem_cache_t *sigqueue_cachep;
146#define sig_kernel_stop(sig) \ 146#define sig_kernel_stop(sig) \
147 (((sig) < SIGRTMIN) && T(sig, SIG_KERNEL_STOP_MASK)) 147 (((sig) < SIGRTMIN) && T(sig, SIG_KERNEL_STOP_MASK))
148 148
149#define sig_needs_tasklist(sig) \ 149#define sig_needs_tasklist(sig) ((sig) == SIGCONT)
150 (((sig) < SIGRTMIN) && T(sig, SIG_KERNEL_STOP_MASK | M(SIGCONT)))
151 150
152#define sig_user_defined(t, signr) \ 151#define sig_user_defined(t, signr) \
153 (((t)->sighand->action[(signr)-1].sa.sa_handler != SIG_DFL) && \ 152 (((t)->sighand->action[(signr)-1].sa.sa_handler != SIG_DFL) && \