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

From: Manfred Spraul
Date: Wed Dec 03 2003 - 15:21:30 EST


Linus Torvalds wrote:

So as far as I can tell, the patch from Ingo and Srivatsa just paper over
the _real_ bug. And the real fix is to get rid of the debugging helper
completely, since it no longer serves any purpose, and it is WRONG!

So tell me why it isn't wrong?


It's wrong, because next_thread() relies on

task->pids[PIDTYPE_TGID].pid_chain.next

That pointer is not valid after detach_pid(task, PIDTYPE_TGID), and that's called within __unhash_process. Thus next_thread() fails if it's called on a dead task. Srivatsa's second patch is the right change: If pid_alive() is wrong, then break from the loop without calling next_thread().

--
Manfred

-
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/