uvn               161 uvm/uvm_vnode.c 	struct uvm_vnode *uvn = &vp->v_uvm;
uvn               175 uvm/uvm_vnode.c 	simple_lock(&uvn->u_obj.vmobjlock);
uvn               176 uvm/uvm_vnode.c 	while (uvn->u_flags & UVM_VNODE_BLOCKED) {
uvn               178 uvm/uvm_vnode.c 		    uvn, uvn->u_flags);
uvn               179 uvm/uvm_vnode.c 		uvn->u_flags |= UVM_VNODE_WANTED;
uvn               181 uvm/uvm_vnode.c 		UVM_UNLOCK_AND_WAIT(uvn, &uvn->u_obj.vmobjlock, FALSE,
uvn               183 uvm/uvm_vnode.c 		simple_lock(&uvn->u_obj.vmobjlock);
uvn               191 uvm/uvm_vnode.c 		simple_unlock(&uvn->u_obj.vmobjlock); /* drop lock */
uvn               202 uvm/uvm_vnode.c 	if (uvn->u_flags & UVM_VNODE_VALID) {	/* already active? */
uvn               205 uvm/uvm_vnode.c 		if (uvn->u_obj.uo_refs == 0) {
uvn               210 uvm/uvm_vnode.c 		uvn->u_obj.uo_refs++;		/* bump uvn ref! */
uvn               214 uvm/uvm_vnode.c 		    (uvn->u_flags & UVM_VNODE_WRITEABLE) == 0) {
uvn               215 uvm/uvm_vnode.c 			LIST_INSERT_HEAD(&uvn_wlist, uvn, u_wlist);
uvn               217 uvm/uvm_vnode.c 			uvn->u_flags |= UVM_VNODE_WRITEABLE;
uvn               221 uvm/uvm_vnode.c 		simple_unlock(&uvn->u_obj.vmobjlock);
uvn               222 uvm/uvm_vnode.c 		UVMHIST_LOG(maphist,"<- done, refcnt=%ld", uvn->u_obj.uo_refs,
uvn               224 uvm/uvm_vnode.c 		return (&uvn->u_obj);
uvn               235 uvm/uvm_vnode.c 	uvn->u_flags = UVM_VNODE_ALOCK;
uvn               236 uvm/uvm_vnode.c 	simple_unlock(&uvn->u_obj.vmobjlock); /* drop lock in case we sleep */
uvn               262 uvm/uvm_vnode.c 	simple_lock(&uvn->u_obj.vmobjlock);
uvn               265 uvm/uvm_vnode.c 		if (uvn->u_flags & UVM_VNODE_WANTED)
uvn               266 uvm/uvm_vnode.c 			wakeup(uvn);
uvn               267 uvm/uvm_vnode.c 		uvn->u_flags = 0;
uvn               268 uvm/uvm_vnode.c 		simple_unlock(&uvn->u_obj.vmobjlock); /* drop lock */
uvn               285 uvm/uvm_vnode.c 	uvn->u_obj.pgops = &uvm_vnodeops;
uvn               286 uvm/uvm_vnode.c 	TAILQ_INIT(&uvn->u_obj.memq);
uvn               287 uvm/uvm_vnode.c 	uvn->u_obj.uo_npages = 0;
uvn               288 uvm/uvm_vnode.c 	uvn->u_obj.uo_refs = 1;			/* just us... */
uvn               289 uvm/uvm_vnode.c 	oldflags = uvn->u_flags;
uvn               290 uvm/uvm_vnode.c 	uvn->u_flags = UVM_VNODE_VALID|UVM_VNODE_CANPERSIST;
uvn               291 uvm/uvm_vnode.c 	uvn->u_nio = 0;
uvn               292 uvm/uvm_vnode.c 	uvn->u_size = used_vnode_size;
uvn               296 uvm/uvm_vnode.c 		LIST_INSERT_HEAD(&uvn_wlist, uvn, u_wlist);
uvn               297 uvm/uvm_vnode.c 		uvn->u_flags |= UVM_VNODE_WRITEABLE;	/* we are on wlist! */
uvn               306 uvm/uvm_vnode.c 	simple_unlock(&uvn->u_obj.vmobjlock);
uvn               308 uvm/uvm_vnode.c 		wakeup(uvn);
uvn               310 uvm/uvm_vnode.c 	UVMHIST_LOG(maphist,"<- done/VREF, ret %p", &uvn->u_obj,0,0,0);
uvn               311 uvm/uvm_vnode.c 	return(&uvn->u_obj);
uvn               332 uvm/uvm_vnode.c 	struct uvm_vnode *uvn = (struct uvm_vnode *) uobj;
uvn               338 uvm/uvm_vnode.c 	if ((uvn->u_flags & UVM_VNODE_VALID) == 0) {
uvn               339 uvm/uvm_vnode.c 		printf("uvn_reference: ref=%d, flags=0x%x\n", uvn->u_flags,
uvn               363 uvm/uvm_vnode.c 	struct uvm_vnode *uvn;
uvn               382 uvm/uvm_vnode.c 	uvn = (struct uvm_vnode *) uobj;
uvn               396 uvm/uvm_vnode.c 	if (uvn->u_flags & UVM_VNODE_CANPERSIST) {
uvn               411 uvm/uvm_vnode.c 	uvn->u_flags |= UVM_VNODE_DYING;
uvn               448 uvm/uvm_vnode.c 		uvn->u_flags |= UVM_VNODE_RELKILL;
uvn               459 uvm/uvm_vnode.c 	if (uvn->u_flags & UVM_VNODE_WRITEABLE) {
uvn               460 uvm/uvm_vnode.c 		LIST_REMOVE(uvn, u_wlist);
uvn               467 uvm/uvm_vnode.c 	oldflags = uvn->u_flags;
uvn               468 uvm/uvm_vnode.c 	uvn->u_flags = 0;
uvn               473 uvm/uvm_vnode.c 		wakeup(uvn);
uvn               516 uvm/uvm_vnode.c 	struct uvm_vnode *uvn = &vp->v_uvm;
uvn               523 uvm/uvm_vnode.c 	simple_lock(&uvn->u_obj.vmobjlock);
uvn               525 uvm/uvm_vnode.c 	    uvn->u_obj.uo_refs, uvn->u_flags, 0);
uvn               526 uvm/uvm_vnode.c 	if ((uvn->u_flags & UVM_VNODE_VALID) == 0) {
uvn               527 uvm/uvm_vnode.c 		simple_unlock(&uvn->u_obj.vmobjlock);
uvn               543 uvm/uvm_vnode.c 	if (uvn->u_obj.uo_refs) {
uvn               545 uvm/uvm_vnode.c 		    "(refs=%d)\n", uvn, uvn->u_obj.uo_refs);
uvn               558 uvm/uvm_vnode.c 	if (uvn->u_flags & UVM_VNODE_RELKILL)
uvn               559 uvm/uvm_vnode.c 		uvn->u_flags &= ~UVM_VNODE_RELKILL;	/* cancel RELKILL */
uvn               574 uvm/uvm_vnode.c 	uvn->u_flags |= UVM_VNODE_DYING|UVM_VNODE_VNISLOCKED;
uvn               576 uvm/uvm_vnode.c 	(void) uvn_flush(&uvn->u_obj, 0, 0, PGO_CLEANIT|PGO_FREE|PGO_ALLPAGES);
uvn               583 uvm/uvm_vnode.c 	while (uvn->u_obj.uo_npages) {
uvn               586 uvm/uvm_vnode.c 		TAILQ_FOREACH(pp, &uvn->u_obj.memq, listq) {
uvn               590 uvm/uvm_vnode.c 		if (uvn->u_nio == 0)
uvn               598 uvm/uvm_vnode.c 		uvn->u_flags |= UVM_VNODE_IOSYNC;
uvn               599 uvm/uvm_vnode.c 		UVM_UNLOCK_AND_WAIT(&uvn->u_nio, &uvn->u_obj.vmobjlock, FALSE,
uvn               601 uvm/uvm_vnode.c 		simple_lock(&uvn->u_obj.vmobjlock);
uvn               611 uvm/uvm_vnode.c 	oldflags = uvn->u_flags;
uvn               612 uvm/uvm_vnode.c 	if (uvn->u_obj.uo_refs) {
uvn               619 uvm/uvm_vnode.c 		uvn->u_flags &= ~(UVM_VNODE_DYING|UVM_VNODE_VNISLOCKED|
uvn               628 uvm/uvm_vnode.c 		if (uvn->u_flags & UVM_VNODE_IOSYNCWANTED)
uvn               631 uvm/uvm_vnode.c 		if (uvn->u_flags & UVM_VNODE_WRITEABLE) {
uvn               632 uvm/uvm_vnode.c 			LIST_REMOVE(uvn, u_wlist);
uvn               634 uvm/uvm_vnode.c 		uvn->u_flags = 0;	/* uvn is history, clear all bits */
uvn               638 uvm/uvm_vnode.c 		wakeup(uvn);		/* object lock still held */
uvn               640 uvm/uvm_vnode.c 	simple_unlock(&uvn->u_obj.vmobjlock);
uvn               667 uvm/uvm_vnode.c 	struct uvm_vnode *uvn = (struct uvm_vnode *) pg->uobject;
uvn               687 uvm/uvm_vnode.c 	if (uvn->u_flags & UVM_VNODE_RELKILL) {
uvn               688 uvm/uvm_vnode.c 		if (uvn->u_obj.uo_refs)
uvn               691 uvm/uvm_vnode.c 		if (uvn->u_obj.uo_npages == 0) {
uvn               692 uvm/uvm_vnode.c 			if (uvn->u_flags & UVM_VNODE_WRITEABLE) {
uvn               693 uvm/uvm_vnode.c 				LIST_REMOVE(uvn, u_wlist);
uvn               696 uvm/uvm_vnode.c 			if (!TAILQ_EMPTY(&uvn->u_obj.memq))
uvn               699 uvm/uvm_vnode.c 			if (uvn->u_flags & UVM_VNODE_WANTED)
uvn               701 uvm/uvm_vnode.c 				wakeup(uvn);
uvn               703 uvm/uvm_vnode.c 			uvn->u_flags = 0;		/* DEAD! */
uvn               704 uvm/uvm_vnode.c 			simple_unlock(&uvn->u_obj.vmobjlock);
uvn               810 uvm/uvm_vnode.c 	struct uvm_vnode *uvn = (struct uvm_vnode *) uobj;
uvn               833 uvm/uvm_vnode.c 		if (stop > round_page(uvn->u_size))
uvn              1212 uvm/uvm_vnode.c 		while (uvn->u_nio != 0) {
uvn              1213 uvm/uvm_vnode.c 			uvn->u_flags |= UVM_VNODE_IOSYNC;
uvn              1214 uvm/uvm_vnode.c 			UVM_UNLOCK_AND_WAIT(&uvn->u_nio, &uvn->u_obj.vmobjlock,
uvn              1216 uvm/uvm_vnode.c 			simple_lock(&uvn->u_obj.vmobjlock);
uvn              1218 uvm/uvm_vnode.c 		if (uvn->u_flags & UVM_VNODE_IOSYNCWANTED)
uvn              1219 uvm/uvm_vnode.c 			wakeup(&uvn->u_flags);
uvn              1220 uvm/uvm_vnode.c 		uvn->u_flags &= ~(UVM_VNODE_IOSYNC|UVM_VNODE_IOSYNCWANTED);
uvn              1244 uvm/uvm_vnode.c 	struct uvm_vnode *uvn = (struct uvm_vnode *) uobj;
uvn              1247 uvm/uvm_vnode.c 	if (*loffset >= uvn->u_size)
uvn              1254 uvm/uvm_vnode.c 	if (*hoffset > round_page(uvn->u_size))	/* past end? */
uvn              1255 uvm/uvm_vnode.c 		*hoffset = round_page(uvn->u_size);
uvn              1550 uvm/uvm_vnode.c uvn_io(uvn, pps, npages, flags, rw)
uvn              1551 uvm/uvm_vnode.c 	struct uvm_vnode *uvn;
uvn              1571 uvm/uvm_vnode.c 	vn = (struct vnode *) uvn;
uvn              1578 uvm/uvm_vnode.c 	while (uvn->u_flags & UVM_VNODE_IOSYNC) {
uvn              1580 uvm/uvm_vnode.c 			simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1584 uvm/uvm_vnode.c 		uvn->u_flags |= UVM_VNODE_IOSYNCWANTED;
uvn              1585 uvm/uvm_vnode.c 		UVM_UNLOCK_AND_WAIT(&uvn->u_flags, &uvn->u_obj.vmobjlock,
uvn              1587 uvm/uvm_vnode.c 		simple_lock(&uvn->u_obj.vmobjlock);
uvn              1594 uvm/uvm_vnode.c 	if (file_offset >= uvn->u_size) {
uvn              1595 uvm/uvm_vnode.c 			simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1609 uvm/uvm_vnode.c 		simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1620 uvm/uvm_vnode.c 	uvn->u_nio++;			/* we have an I/O in progress! */
uvn              1621 uvm/uvm_vnode.c 	simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1639 uvm/uvm_vnode.c 	if (file_offset + wanted > uvn->u_size)
uvn              1640 uvm/uvm_vnode.c 		wanted = uvn->u_size - file_offset;	/* XXX: needed? */
uvn              1666 uvm/uvm_vnode.c 	if ((uvn->u_flags & UVM_VNODE_VNISLOCKED) == 0)
uvn              1677 uvm/uvm_vnode.c 		if ((uvn->u_flags & UVM_VNODE_VNISLOCKED) == 0)
uvn              1711 uvm/uvm_vnode.c 	simple_lock(&uvn->u_obj.vmobjlock);
uvn              1714 uvm/uvm_vnode.c 	uvn->u_nio--;			/* I/O DONE! */
uvn              1715 uvm/uvm_vnode.c 	if ((uvn->u_flags & UVM_VNODE_IOSYNC) != 0 && uvn->u_nio == 0) {
uvn              1716 uvm/uvm_vnode.c 		wakeup(&uvn->u_nio);
uvn              1718 uvm/uvm_vnode.c 	simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1772 uvm/uvm_vnode.c 	struct uvm_vnode *uvn = &vp->v_uvm;
uvn              1778 uvm/uvm_vnode.c 	simple_lock(&uvn->u_obj.vmobjlock);
uvn              1779 uvm/uvm_vnode.c 	if ((uvn->u_flags & UVM_VNODE_VALID) == 0 ||
uvn              1780 uvm/uvm_vnode.c 			(uvn->u_flags & UVM_VNODE_BLOCKED) != 0) {
uvn              1781 uvm/uvm_vnode.c 		simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1790 uvm/uvm_vnode.c 	uvn->u_flags &= ~UVM_VNODE_CANPERSIST;
uvn              1791 uvm/uvm_vnode.c 	if (uvn->u_obj.uo_refs) {
uvn              1792 uvm/uvm_vnode.c 		simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1802 uvm/uvm_vnode.c 	uvn->u_obj.uo_refs++;		/* value is now 1 */
uvn              1803 uvm/uvm_vnode.c 	simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1847 uvm/uvm_vnode.c 	uvn_detach(&uvn->u_obj);
uvn              1880 uvm/uvm_vnode.c 	struct uvm_vnode *uvn = &vp->v_uvm;
uvn              1885 uvm/uvm_vnode.c 	simple_lock(&uvn->u_obj.vmobjlock);
uvn              1886 uvm/uvm_vnode.c 	if (uvn->u_flags & UVM_VNODE_VALID) {
uvn              1893 uvm/uvm_vnode.c 		if (uvn->u_size > newsize) {
uvn              1894 uvm/uvm_vnode.c 			(void)uvn_flush(&uvn->u_obj, newsize,
uvn              1895 uvm/uvm_vnode.c 			    uvn->u_size, PGO_FREE);
uvn              1897 uvm/uvm_vnode.c 		uvn->u_size = newsize;
uvn              1899 uvm/uvm_vnode.c 	simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1922 uvm/uvm_vnode.c 	struct uvm_vnode *uvn;
uvn              1937 uvm/uvm_vnode.c 	LIST_FOREACH(uvn, &uvn_wlist, u_wlist) {
uvn              1939 uvm/uvm_vnode.c 		vp = (struct vnode *) uvn;
uvn              1944 uvm/uvm_vnode.c 		while ((got_lock = simple_lock_try(&uvn->u_obj.vmobjlock)) ==
uvn              1946 uvm/uvm_vnode.c 				(uvn->u_flags & UVM_VNODE_BLOCKED) == 0)
uvn              1963 uvm/uvm_vnode.c 		if (!got_lock || (uvn->u_flags & UVM_VNODE_BLOCKED) != 0) {
uvn              1965 uvm/uvm_vnode.c 				simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1973 uvm/uvm_vnode.c 		if (uvn->u_obj.uo_refs == 0)
uvn              1975 uvm/uvm_vnode.c 		uvn->u_obj.uo_refs++;
uvn              1976 uvm/uvm_vnode.c 		simple_unlock(&uvn->u_obj.vmobjlock);
uvn              1981 uvm/uvm_vnode.c 		SIMPLEQ_INSERT_HEAD(&uvn_sync_q, uvn, u_syncq);
uvn              1989 uvm/uvm_vnode.c 	SIMPLEQ_FOREACH(uvn, &uvn_sync_q, u_syncq) {
uvn              1990 uvm/uvm_vnode.c 		simple_lock(&uvn->u_obj.vmobjlock);
uvn              1992 uvm/uvm_vnode.c 		if (uvn->u_flags & UVM_VNODE_DYING) {
uvn              1996 uvm/uvm_vnode.c 		uvn_flush(&uvn->u_obj, 0, 0,
uvn              2005 uvm/uvm_vnode.c 		if (uvn->u_obj.uo_refs == 1 &&
uvn              2006 uvm/uvm_vnode.c 		    (uvn->u_flags & UVM_VNODE_WRITEABLE)) {
uvn              2007 uvm/uvm_vnode.c 			LIST_REMOVE(uvn, u_wlist);
uvn              2008 uvm/uvm_vnode.c 			uvn->u_flags &= ~UVM_VNODE_WRITEABLE;
uvn              2011 uvm/uvm_vnode.c 		simple_unlock(&uvn->u_obj.vmobjlock);
uvn              2014 uvm/uvm_vnode.c 		uvn_detach(&uvn->u_obj);