svn commit: r207806 - head/sys/vm

Alan Cox alc at FreeBSD.org
Sun May 9 00:32:53 UTC 2010


Author: alc
Date: Sun May  9 00:32:52 2010
New Revision: 207806
URL: http://svn.freebsd.org/changeset/base/207806

Log:
  Remove the page queues lock around a call to vm_page_activate().  Make the
  page dirty before adding it to the active queue.

Modified:
  head/sys/vm/swap_pager.c

Modified: head/sys/vm/swap_pager.c
==============================================================================
--- head/sys/vm/swap_pager.c	Sat May  8 23:01:47 2010	(r207805)
+++ head/sys/vm/swap_pager.c	Sun May  9 00:32:52 2010	(r207806)
@@ -1707,11 +1707,9 @@ swp_pager_force_pagein(vm_object_t objec
 	m = vm_page_grab(object, pindex, VM_ALLOC_NORMAL|VM_ALLOC_RETRY);
 	if (m->valid == VM_PAGE_BITS_ALL) {
 		vm_object_pip_subtract(object, 1);
+		vm_page_dirty(m);
 		vm_page_lock(m);
-		vm_page_lock_queues();
 		vm_page_activate(m);
-		vm_page_dirty(m);
-		vm_page_unlock_queues();
 		vm_page_unlock(m);
 		vm_page_wakeup(m);
 		vm_pager_page_unswapped(m);


More information about the svn-src-all mailing list