From: Oleg Nesterov This patch removes unneeded sig->curr_target recalculation under 'if (atomic_dec_and_test(&sig->count))' in __exit_signal(). When sig->count == 0 the signal can't be sent to this task and next_thread(tsk) == tsk anyway. Signed-off-by: Oleg Nesterov Signed-off-by: Andrew Morton --- kernel/signal.c | 2 -- 1 files changed, 2 deletions(-) diff -puN kernel/signal.c~remove-unneeded-sig-curr_target-recalculation kernel/signal.c --- devel/kernel/signal.c~remove-unneeded-sig-curr_target-recalculation 2005-11-27 22:01:14.000000000 -0800 +++ devel-akpm/kernel/signal.c 2005-11-27 22:01:14.000000000 -0800 @@ -364,8 +364,6 @@ void __exit_signal(struct task_struct *t posix_cpu_timers_exit(tsk); if (atomic_dec_and_test(&sig->count)) { posix_cpu_timers_exit_group(tsk); - if (tsk == sig->curr_target) - sig->curr_target = next_thread(tsk); tsk->signal = NULL; __exit_sighand(tsk); spin_unlock(&sighand->siglock); _