Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 May 2009 20:41:37 +0000 (UTC)
From:      Kip Macy <kmacy@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r192854 - user/kmacy/releng_7_2_fcs/sys/vm
Message-ID:  <200905262041.n4QKfbuT073088@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kmacy
Date: Tue May 26 20:41:37 2009
New Revision: 192854
URL: http://svn.freebsd.org/changeset/base/192854

Log:
  - add addition page lock not owned asserts
  - fix misconversion of page queue lock to page lock in vm_pageout_scan

Modified:
  user/kmacy/releng_7_2_fcs/sys/vm/vm_pageout.c

Modified: user/kmacy/releng_7_2_fcs/sys/vm/vm_pageout.c
==============================================================================
--- user/kmacy/releng_7_2_fcs/sys/vm/vm_pageout.c	Tue May 26 20:28:22 2009	(r192853)
+++ user/kmacy/releng_7_2_fcs/sys/vm/vm_pageout.c	Tue May 26 20:41:37 2009	(r192854)
@@ -785,7 +785,7 @@ rescan0:
 			addl_page_shortage++;
 			continue;
 		}
-
+		vm_page_lock_assert(m, MA_NOTOWNED);
 		if (vm_page_trylock(m) == 0) {
 			VM_OBJECT_UNLOCK(object);
 			addl_page_shortage++;
@@ -1043,16 +1043,18 @@ rescan0:
 				--page_shortage;
 				--maxlaunder;
 			} 
+			vm_page_lock_assert(m, MA_NOTOWNED);
 			vm_page_lock_queues();
 unlock_and_continue:
 			VM_OBJECT_UNLOCK(object);
 			if (mp != NULL) {
+				vm_page_unlock_queues();
 				if (vp != NULL)
 					vput(vp);
 				VFS_UNLOCK_GIANT(vfslocked);
 				vm_object_deallocate(object);
 				vn_finished_write(mp);
-				vm_page_lock(m);
+				vm_page_lock_queues();
 			}
 			next = TAILQ_NEXT(&marker, pageq);
 			TAILQ_REMOVE(&vm_page_queues[PQ_INACTIVE].pl,



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200905262041.n4QKfbuT073088>