Subject: CVS commit: src/sys/kern
To: None <source-changes@NetBSD.org>
From: YAMAMOTO Takashi <yamt@netbsd.org>
List: source-changes
Date: 03/02/2004 09:15:26
Module Name:	src
Committed By:	yamt
Date:		Tue Mar  2 09:15:26 UTC 2004

Modified Files:
	src/sys/kern: kern_exit.c kern_lwp.c

Log Message:
once exit1() releases big kernel lock, the struct proc can be freed and
re-used by another cpu immediately.  in that case, lwp_exit2() will
access freed memory.  to fix this:

- remove curlwp from p_lwps in exit1() rather than letting lwp_exit2() do so.
- add assertions to ensure freed proc has no lwps.

kern/24329 from me and kern/24574 from Havard Eidnes.


To generate a diff of this commit:
cvs rdiff -r1.136 -r1.137 src/sys/kern/kern_exit.c
cvs rdiff -r1.24 -r1.25 src/sys/kern/kern_lwp.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.