PERFORCE change 156319 for review

Robert Watson rwatson at FreeBSD.org
Sun Jan 18 02:40:29 PST 2009


http://perforce.freebsd.org/chv.cgi?CH=156319

Change 156319 by rwatson at rwatson_freebsd_capabilities on 2009/01/18 10:39:35

	proc_reap() requires the process spinlock, so assert it, and acquire
	when calling it from procdesc_close().

Affected files ...

.. //depot/projects/trustedbsd/capabilities/src/sys/kern/kern_exit.c#8 edit
.. //depot/projects/trustedbsd/capabilities/src/sys/kern/sys_procdesc.c#3 edit

Differences ...

==== //depot/projects/trustedbsd/capabilities/src/sys/kern/kern_exit.c#8 (text+ko) ====

@@ -726,6 +726,7 @@
 
 	sx_assert(&proctree_lock, SA_XLOCKED);
 	PROC_LOCK_ASSERT(p, MA_OWNED);
+	PROC_SLOCK_ASSERT(p, MA_OWNED);
 	KASSERT(p->p_state == PRS_ZOMBIE, ("proc_reap: !PRS_ZOMBIE"));
 
 	q = td->td_proc;

==== //depot/projects/trustedbsd/capabilities/src/sys/kern/sys_procdesc.c#3 (text+ko) ====

@@ -317,6 +317,7 @@
 		 * the process descriptor when it calls back into
 		 * procdesc_reap().
 		 */
+		PROC_SLOCK(p);
 		proc_reap(curthread, p, NULL, 0, NULL);
 	} else {
 		/*


More information about the p4-projects mailing list