Re: kernel BUG at kernel/exit.c:792!

From: Linus Torvalds
Date: Wed Dec 03 2003 - 13:21:28 EST




On Wed, 3 Dec 2003, Manfred Spraul wrote:
>
> But I don't understand the oops:
> __exit_sighand clears current->sighand, and then in the next line
> __unhash_process removes the thread from the task list. But that's under
> write_lock_irq(&tasklist_lock), and get_tid_list runs under
> read_lock(&tasklist_lock). It should be impossible that ->sighand is
> NULL and the task is still listed in the task list.

The /proc filesystem will keep pointers to processes alive, and can reach
them even if the process is otherwise gone.

This is why /proc ends up doing tests like "if (tsk->mm)" etc - because it
literally can see processes after they are dead.

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/