From owner-freebsd-bugs Thu Mar 12 18:27:22 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id SAA26800 for freebsd-bugs-outgoing; Thu, 12 Mar 1998 18:27:22 -0800 (PST) (envelope-from owner-freebsd-bugs@FreeBSD.ORG) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id SAA26791; Thu, 12 Mar 1998 18:27:16 -0800 (PST) (envelope-from bde@godzilla.zeta.org.au) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.7/8.8.7) id NAA32629; Fri, 13 Mar 1998 13:22:16 +1100 Date: Fri, 13 Mar 1998 13:22:16 +1100 From: Bruce Evans Message-Id: <199803130222.NAA32629@godzilla.zeta.org.au> To: bugs@FreeBSD.ORG Subject: sleep holding a simple lock Cc: dyson@FreeBSD.ORG Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org /* * Destroy the copy in the VM cache, too. */ simple_lock(&vp->v_interlock); object = vp->v_object; if (object != NULL) { if (flags & V_SAVEMETA) vm_object_page_remove(object, 0, object->size, (flags & V_SAVE) ? TRUE : FALSE); else vm_object_page_remove(object, 0, 0, (flags & V_SAVE) ? TRUE : FALSE); } simple_unlock(&vp->v_interlock); The above code in vfs_subr.c sleeps holding a simple lock if vm_object_page_remove() sleeps. There is obviously no way for vm_object_page_remove() to release the lock. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message