On Mon, 10 Feb 2003, Ingo Molnar wrote:
>
> > Interesting. Especially as the last thing exit_notify() does (just a few
> > lines above the schedule()) is to do
> >
> > tsk->state = TASK_ZOMBIE;
> >
> > and that schedule() _really_ really shouldn't return. Regardless of any
> > signal handler changes.
>
> the proper way to avoid such scenarios (besides removing tasks from all
> waitqueues) is to remove the thread from all the PID-hashes prior setting
> it to TASK_ZOMBIE.
Not a good idea.
We still want to find zombie processes, since they show up in "ps"
listings etc. And I don't think sending a signal to a zombie process
should return ESRCH, since it's there.
Btw, I fixed it by making all wake-up events give a mask of which states
can be woken up. That's really what SIGCONT wanted anyway (only wake up
stopped tasks), _and_ it's what default_wake_function() really wanted.
Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sat Feb 15 2003 - 22:00:28 EST