svn commit: r188608 - in head/sys: amd64/amd64 i386/i386

Alan Cox alc at FreeBSD.org
Sat Feb 14 10:23:53 PST 2009


Author: alc
Date: Sat Feb 14 18:23:52 2009
New Revision: 188608
URL: http://svn.freebsd.org/changeset/base/188608

Log:
  Remove unnecessary page queues locking around vm_page_busy() and
  vm_page_wakeup().  (This change is applicable to RELENG_7 but not
  RELENG_6.)
  
  MFC after:	1 week

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

Modified: head/sys/amd64/amd64/pmap.c
==============================================================================
--- head/sys/amd64/amd64/pmap.c	Sat Feb 14 14:53:51 2009	(r188607)
+++ head/sys/amd64/amd64/pmap.c	Sat Feb 14 18:23:52 2009	(r188608)
@@ -3400,9 +3400,7 @@ retry:
 			}
 
 			p = vm_page_lookup(object, pindex);
-			vm_page_lock_queues();
 			vm_page_wakeup(p);
-			vm_page_unlock_queues();
 		}
 
 		ptepa = VM_PAGE_TO_PHYS(p);
@@ -3416,15 +3414,11 @@ retry:
 			while ((pdpg =
 			    pmap_allocpde(pmap, va, M_NOWAIT)) == NULL) {
 				PMAP_UNLOCK(pmap);
-				vm_page_lock_queues();
 				vm_page_busy(p);
-				vm_page_unlock_queues();
 				VM_OBJECT_UNLOCK(object);
 				VM_WAIT;
 				VM_OBJECT_LOCK(object);
-				vm_page_lock_queues();
 				vm_page_wakeup(p);
-				vm_page_unlock_queues();
 				PMAP_LOCK(pmap);
 			}
 			pde = (pd_entry_t *)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(pdpg));

Modified: head/sys/i386/i386/pmap.c
==============================================================================
--- head/sys/i386/i386/pmap.c	Sat Feb 14 14:53:51 2009	(r188607)
+++ head/sys/i386/i386/pmap.c	Sat Feb 14 18:23:52 2009	(r188608)
@@ -3469,9 +3469,7 @@ retry:
 			}
 
 			p = vm_page_lookup(object, pindex);
-			vm_page_lock_queues();
 			vm_page_wakeup(p);
-			vm_page_unlock_queues();
 		}
 
 		ptepa = VM_PAGE_TO_PHYS(p);


More information about the svn-src-head mailing list