ptrace_resume()->send_sig() can hit the dead task without ->signal. Add the temporary fix.
This change should be reverted later, signals-introduce-do_send_sig_info-helper.patch in -mm tree fixes this problem "by accident". Until then, make sure at least this bug won't add a noise during the testing. --- --- PU/kernel/ptrace.c~03_SEND_SIG 2009-08-13 17:04:49.000000000 +0200 +++ PU/kernel/ptrace.c 2009-08-13 17:35:29.000000000 +0200 @@ -1052,8 +1052,13 @@ static int ptrace_resume(struct task_str * After a syscall stop, @data is treated specially. * It just queues the signal. */ - if (data) - send_sig(data, child, 1); + if (data) { + /* XXX: until do_send_sig_info() */ + read_lock(&tasklist_lock); + if (child->signal) + send_sig(data, child, 1); + read_unlock(&tasklist_lock); + } data = 0; event = 0; break;