svn commit: r216516 - head/sys/i386/i386

Konstantin Belousov kib at FreeBSD.org
Sat Dec 18 11:31:32 UTC 2010


Author: kib
Date: Sat Dec 18 11:31:32 2010
New Revision: 216516
URL: http://svn.freebsd.org/changeset/base/216516

Log:
  In pmap_extract(), unlock pmap lock earlier. The calculation does not need
  the lock when operating on local variables.
  
  Reviewed by:	alc

Modified:
  head/sys/i386/i386/pmap.c

Modified: head/sys/i386/i386/pmap.c
==============================================================================
--- head/sys/i386/i386/pmap.c	Sat Dec 18 10:09:07 2010	(r216515)
+++ head/sys/i386/i386/pmap.c	Sat Dec 18 11:31:32 2010	(r216516)
@@ -1299,13 +1299,13 @@ pmap_extract(pmap_t pmap, vm_offset_t va
 	ptep = pmap_pte(pmap, va);
 	pte = (ptep != NULL) ? *ptep : 0;
 	pmap_pte_release(ptep);
+	PMAP_UNLOCK(pmap);
 	if ((pte & PG_V) != 0) {
 		if ((pte & PG_PS) != 0)
 			rtval = (pte & PG_PS_FRAME) | (va & PDRMASK);
 		else
 			rtval = (pte & PG_FRAME) | (va & PAGE_MASK);
 	}
-	PMAP_UNLOCK(pmap);
 	return (rtval);
 }
 


More information about the svn-src-head mailing list