Date: Mon, 13 Jan 2003 15:04:32 -0800 (PST) From: Matt Dillon <dillon@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern kern_exec.c kern_exit.c sysv_ipc.c sysv_shm.c src/sys/sys ipc.h shm.h src/sys/vm vm_map.c Message-ID: <200301132304.h0DN4WRU082718@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
dillon 2003/01/13 15:04:32 PST
Modified files:
sys/kern kern_exec.c kern_exit.c sysv_ipc.c
sysv_shm.c
sys/sys ipc.h shm.h
sys/vm vm_map.c
Log:
It is possible for an active aio to prevent shared memory from being
dereferenced when a process exits due to the vmspace ref-count being
bumped. Change shmexit() and shmexit_myhook() to take a vmspace instead
of a process and call it in vmspace_dofree(). This way if it is missed
in exit1()'s early-resource-free it will still be caught when the zombie is
reaped.
Also fix a potential race in shmexit_myhook() by NULLing out
vmspace->vm_shm prior to calling shm_delete_mapping() and free().
MFC after: 7 days
Revision Changes Path
1.208 +1 -2 src/sys/kern/kern_exec.c
1.189 +1 -2 src/sys/kern/kern_exit.c
1.24 +3 -4 src/sys/kern/sysv_ipc.c
1.76 +15 -17 src/sys/kern/sysv_shm.c
1.23 +2 -1 src/sys/sys/ipc.h
1.18 +2 -1 src/sys/sys/shm.h
1.280 +8 -0 src/sys/vm/vm_map.c
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200301132304.h0DN4WRU082718>
