2008/7/18, Lothar Braun <lothar_at_lobraun.de>: > Hi, > > Kris Kennaway wrote: > > > > > > dmesg says: > > > > > > SGI XFS with large block numbers, tracing, no debug enabled > > > fsname '/dev/ad8s4' logname '' rtname '' > > > flags 0x200000 sunit 0 swidth 0 logbufs -1 logbufsize -1 > > > xfs_setsize_buftarg NI 0xc692d420 > > > XFS mounting filesystem /dev/ad8s4 > > > Ending clean XFS mount for filesystem: /dev/ad8s4 > > > xfs_iunpin: REC RECABLE ip 0xc6f89d38 > > > xfs_iunpin: REC RECABLE ip 0xc6f8a000 > > > xfs_iflush: ip 0xc6f89d38 i_ino 131 > > > > > > > > > I'll recompile the kernel with INVARIANTS and WITNESS enabled in order > to get more information about the problem. > > > > > > > And DEBUG_LOCKS and DEBUG_VFS_LOCKS please :) > > > > I now have > > makeoptions DEBUG=-g > options KDB # Enable kernel debugger support. > options KDB_UNATTENDED > options DDB # Support DDB. > options GDB # Support remote GDB. > options INVARIANTS # Enable calls of extra sanity > checking > options INVARIANT_SUPPORT # Extra sanity checks of internal > structures, required by INVARIANTS > options WITNESS # Enable checks to detect deadlocks > and cycles > options WITNESS_SKIPSPIN # Don't run witness on spinlocks > for speed > options DEBUG_LOCKS > options DEBUG_VFS_LOCKS > > enabled and got the following output in /var/log/messages: > > Jul 18 12:28:14 finch kernel: SGI XFS with large block numbers, tracing, no > debug enabled > Jul 18 12:28:14 finch kernel: fsname '/dev/ad8s4' logname '' rtname '' > Jul 18 12:28:14 finch kernel: flags 0x200000 sunit 0 swidth 0 logbufs -1 > logbufsize -1 > Jul 18 12:28:14 finch kernel: xfs_setsize_buftarg NI 0xc6773a60 > Jul 18 12:28:14 finch kernel: XFS mounting filesystem /dev/ad8s4 > Jul 18 12:28:15 finch kernel: Ending clean XFS mount for filesystem: > /dev/ad8s4 > Jul 18 12:28:20 finch kernel: lock order reversal: > Jul 18 12:28:20 finch kernel: 1st 0xc6dd95b8 xfs (xfs) _at_ > /usr/src/sys/kern/vfs_lookup.c:432 > Jul 18 12:28:20 finch kernel: 2nd 0xc6f9e090 xfsino (xfsino) _at_ > /usr/src/sys/modules/xfs/../../gnu/fs/xfs/xfs_iget.c:881 > Jul 18 12:28:20 finch kernel: 3rd 0xc6fa1058 xfs (xfs) _at_ > /usr/src/sys/modules/xfs/../../gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c:393 > Jul 18 12:28:20 finch kernel: KDB: stack backtrace: > Jul 18 12:28:20 finch kernel: > db_trace_self_wrapper(c0b2f902,e8fc2760,c07ce8ee,c0b32188,c6fa1058,...) > at db_trace_self_wrapper+0x26 > Jul 18 12:28:20 finch kernel: > kdb_backtrace(c0b32188,c6fa1058,c6ee0df9,c6ee0df9,c6ee0d4e,...) > at kdb_backtrace+0x29 > Jul 18 12:28:20 finch kernel: > witness_checkorder(c6fa1058,9,c6ee0d4e,189,4,...) at > witness_checkorder+0x6de > Jul 18 12:28:20 finch kernel: > __lockmgr_args(c6fa1058,80400,c6fa10c0,0,0,...) at > __lockmgr_args+0x777 > Jul 18 12:28:20 finch kernel: > vop_stdlock(e8fc2860,c6fa10f4,c6fa1000,80400,c6fa1000,...) > at vop_stdlock+0x65 > Jul 18 12:28:20 finch kernel: > VOP_LOCK1_APV(c6eea5c0,e8fc2860,c0c3a2a0,c6fa1000,80400,...) > at VOP_LOCK1_APV+0xa5 > Jul 18 12:28:20 finch kernel: > _vn_lock(c6fa1000,80400,c6ee0d4e,189,e8fc28dc,...) at > _vn_lock+0x5e > Jul 18 12:28:20 finch kernel: > xfs_iget(c6926800,c6fa3000,83,0,1,...) at xfs_iget+0x27b > Jul 18 12:28:20 finch kernel: > xfs_trans_iget(c6926800,c6fa3000,83,0,1,...) at > xfs_trans_iget+0x256 > Jul 18 12:28:20 finch kernel: > xfs_ialloc(c6fa3000,c6f9e000,41ed,2,0,...) at > xfs_ialloc+0xda > Jul 18 12:28:20 finch kernel: > xfs_dir_ialloc(e8fc2a78,c6f9e000,41ed,2,0,...) at > xfs_dir_ialloc+0x82 > Jul 18 12:28:20 finch kernel: > xfs_mkdir(c6f9e020,e8fc2c04,e8fc2ab4,e8fc2b28,c69dd700,...) > at xfs_mkdir+0x457 > Jul 18 12:28:20 finch kernel: > _xfs_mkdir(e8fc2c28,c0b6262e,0,e8fc2c28,e8fc2bd8,...) at > _xfs_mkdir+0xb0 > Jul 18 12:28:20 finch kernel: > VOP_MKDIR_APV(c6eea5c0,e8fc2c28,e97,e95,1,...) at > VOP_MKDIR_APV+0xc5 > Jul 18 12:28:20 finch kernel: > kern_mkdirat(c67778c0,ffffff9c,bfbfee32,0,1ff,...) at > kern_mkdirat+0x276 > Jul 18 12:28:20 finch kernel: > kern_mkdir(c67778c0,bfbfee32,0,1ff,e8fc2d2c,...) at > kern_mkdir+0x2e > Jul 18 12:28:20 finch kernel: > mkdir(c67778c0,e8fc2cf8,8,c,c0c003e0,...) at mkdir+0x29 > Jul 18 12:28:20 finch kernel: syscall(e8fc2d38) at syscall+0x2a3 > Jul 18 12:28:20 finch kernel: Xint0x80_syscall() at Xint0x80_syscall+0x20 > Jul 18 12:28:20 finch kernel: --- syscall (136, FreeBSD ELF32, mkdir), eip > = 0x28159cd3, esp = 0xbfbfec5c, ebp = 0xbfbfed28 --- > Jul 18 12:28:23 finch kernel: xfs_iunpin: REC RECABLE ip 0xc6f9dd80 > Jul 18 12:28:23 finch kernel: xfs_iunpin: REC RECABLE ip 0xc6f9e000 > Jul 18 12:28:25 finch kernel: System call stat returning with the following > locks held: > Jul 18 12:28:25 finch kernel: exclusive lockmgr xfs r = 0 (0xc6fa1058) > locked _at_ /usr/src/sys/modules/xfs/../. Hello Lothar, can you please try this on the top of -CURRENT: http://www.freebsd.org/~attilio/xfs2.diff (it is a perforce patch, so just use -p6 as patching level). Thanks, Attilio -- Peace can only be achieved by understanding - A. EinsteinReceived on Sat Jul 19 2008 - 13:27:18 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:33 UTC