Date: Sat, 6 Jun 2009 12:01:41 +0300 From: Jaakko Heinonen <jh@saunalahti.fi> To: Paul Saab <ps@FreeBSD.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r193440 - in head/sys: cddl/contrib/opensolaris/uts/common/fs/zfs kern sys Message-ID: <20090606090141.GA805@a91-153-125-115.elisa-laajakaista.fi> In-Reply-To: <200906041618.n54GI851097005@svn.freebsd.org> References: <200906041618.n54GI851097005@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, On 2009-06-04, Paul Saab wrote: > Support shared vnode locks for write operations when the offset is > provided on filesystems that support it. This really improves mysql > + innodb performance on ZFS. The panic below looks related to this commit. I think the assert is only enabled when DEBUG_VFS_LOCKS is defined. VOP_WRITE: 0xc3b89218 is not exclusive locked but should be KDB: enter: lock violation [thread pid 163 tid 100079 ] Stopped at kdb_enter+0x3a: movl $0,kdb_why db> bt Tracing pid 163 tid 100079 td 0xc3ba4d80 kdb_enter(c0c460df,c0c460d0,c3b89218,c0c46a4a,c3b89218,...) at kdb_enter+0x3a vfs_badlock(c3a4d7e0,e84025d0,c0d55220,c3b89218) at vfs_badlock+0x61 assert_vop_elocked(c3b89218,c0c7419a,200400,c3b89270,c3b89218,...) at assert_vop_elocked+0x55 VOP_WRITE_APV(c3a4d7e0,e84026b4,c0c47289,183,0,...) at VOP_WRITE_APV+0x98 vn_rdwr(1,c3b89218,c3f3e0c0,2ff4,0,...) at vn_rdwr+0x18e zfs_replay_write(c38ba800,c3f3e000,0,80090502,0,...) at zfs_replay_write+0xf2 zil_replay_log_record(c3e2d800,c3dd9070,e84028e8,2fe0,0,...) at zil_replay_log_record+0x136 zil_parse(c3e2d800,c39c6eb0,c39c7260,e84028e8,2fe0,...) at zil_parse+0x1f7 zil_replay(c3b880b0,c38ba800,c38ba824,c3a4d3c0,c39d76e0,...) at zil_replay+0x184 zfsvfs_setup(c3b880b0,e84029fc,2,c38ba808,c3ba4d80,...) at zfsvfs_setup+0xec zfs_mount(c38bd78c,0,c0c45694,3d3,0,...) at zfs_mount+0x791 vfs_donmount(c3ba4d80,0,c38c5880,c38c5880,280c8f70,...) at vfs_donmount+0x100b nmount(c3ba4d80,e8402cf8,c,c0c3f440,c0d1ed78,...) at nmount+0x72 syscall(e8402d38) at syscall+0x2a3 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (378, FreeBSD ELF32, nmount), eip = 0x28173c2b, esp = 0xbfbfd00c, ebp = 0xbfbfd048 --- db> show vnode 0xc3b89218 vnode 0xc3b89218: tag zfs, type VREG usecount 1, writecount 0, refcount 1 mountedhere 0 flags () lock type zfs: SHARED (count 1) -- Jaakko
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090606090141.GA805>