From owner-freebsd-current@FreeBSD.ORG Wed Sep 3 03:16:32 2003 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 442D216A4BF; Wed, 3 Sep 2003 03:16:32 -0700 (PDT) Received: from gw.catspoiler.org (217-ip-163.nccn.net [209.79.217.163]) by mx1.FreeBSD.org (Postfix) with ESMTP id 942E444020; Wed, 3 Sep 2003 03:16:28 -0700 (PDT) (envelope-from truckman@FreeBSD.org) Received: from FreeBSD.org (mousie.catspoiler.org [192.168.101.2]) by gw.catspoiler.org (8.12.9/8.12.9) with ESMTP id h83AGKr1039090; Wed, 3 Sep 2003 03:16:24 -0700 (PDT) (envelope-from truckman@FreeBSD.org) Message-Id: <200309031016.h83AGKr1039090@gw.catspoiler.org> Date: Wed, 3 Sep 2003 03:16:20 -0700 (PDT) From: Don Lewis To: current@FreeBSD.org, jeff@FreeBSD.org MIME-Version: 1.0 Content-Type: TEXT/plain; charset=us-ascii Subject: dirtybuf: 0xc643f000 interlock is not locked but should be X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Sep 2003 10:16:32 -0000 I just upgraded to a fresh version of -current and started getting a lot of these vnode lock violation messages when running with the DEBUG_VFS_LOCKS kernel option. I only ever saw the stack trace below, but it is not obvious to me that other callers of getdirtybuf() would not have the same problem with the vnode interlock. dirtybuf: 0xc643f000 interlock is not locked but should be Debugger("Lock violation. ") Stopped at Debugger+0x54: xchgl %ebx,in_Debugger.0 db> bt No such command db> tr Debugger(c055816e,c0565751,c643f000,c05581a5,e5555b68) at Debugger+0x54 vfs_badlock(c05581a5,c0565751,c643f000,0,e5555ba0) at vfs_badlock+0x45 assert_vi_locked(c643f000,c0565751,0,c61e8850,c0616f80) at assert_vi_locked+0x3a getdirtybuf(e5555bb4,0,1,d2899610,1) at getdirtybuf+0xee flush_deplist(c64532cc,1,e5555bdc,e5555be0,0) at flush_deplist+0x43 flush_inodedep_deps(c641c000,6d45b,ffffffff,c6507a44,124) at flush_inodedep_deps+0xa3 softdep_sync_metadata(e5555ca4,0,c0565af4,124,0) at softdep_sync_metadata+0x87 ffs_fsync(e5555ca4,c054a4a8,c0558b14,ad8,0) at ffs_fsync+0x3b9 fsync(c61e8850,e5555d10,c056cc5c,3eb,1) at fsync+0x1d4 syscall(2f,2f,2f,8054cdc,bfbfeda0) at syscall+0x273 Xint0x80_syscall() at Xint0x80_syscall+0x1d --- syscall (95, FreeBSD ELF32, fsync), eip = 0x480cf38f, esp = 0xbfbfe7ec, ebp = 0xbfbfedc8 ---