PERFORCE change 85756 for review

Alan Cox alc at FreeBSD.org
Sun Oct 23 15:35:52 PDT 2005


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

Change 85756 by alc at alc_home on 2005/10/23 22:35:04

	Assert that the object containing the reservation is locked in
	several functions.

Affected files ...

.. //depot/projects/superpages/src/sys/vm/vm_reserve.c#5 edit

Differences ...

==== //depot/projects/superpages/src/sys/vm/vm_reserve.c#5 (text+ko) ====

@@ -300,6 +300,7 @@
 {
 	int pos;
 
+	VM_OBJECT_LOCK_ASSERT(res->object, MA_OWNED);
 	KASSERT(!res->broken,("reserve_populate: reservation is broken"));
 	m->reserv = res;
 	for (;;) {
@@ -344,6 +345,7 @@
 	res = m->reserv;
 	KASSERT(res != NULL && !res->broken,
 	    ("reserve_unpopulate: no reservation or broken reservation"));
+	VM_OBJECT_LOCK_ASSERT(res->object, MA_OWNED);
 	for (sp = res;;) {
 		KASSERT(sp->popfrom != sp->popto && sp->refcnt > 0,
 		    ("reserve_unpopulate: sp not valid"));
@@ -570,6 +572,7 @@
 preempt_move(reservation_t sp, boolean_t to_tail)
 {
 
+	VM_OBJECT_LOCK_ASSERT(sp->object, MA_OWNED);
 	if (sp->rql != NO_RESQ) {
 		KASSERT(sp->rql >= -1 && sp->rql <= SP_LEVELS - 2 &&
 		    sp->rql < sp->level, ("preempt_move: sp->rql invalid"));


More information about the p4-projects mailing list