On Wed, Aug 4, 2010 at 12:27 AM, Dave Chinner <david@xxxxxxxxxxxxx> wrote: > On Tue, Aug 03, 2010 at 09:15:53PM -0400, Ilia Mirkin wrote: >> On Tue, Aug 3, 2010 at 8:47 PM, Dave Chinner <david@xxxxxxxxxxxxx> wrote: >> > Ilia, >> > >> > Can you send me the output of this for your kernel that the >> > traces came from: >> > >> > $ gdb <path/to/vmlinux> >> > (gdb) l *( xfs_write+0x2cc) >> > >> > You can run it against the vmlinux file in the kernel build >> > directory. Basically I need to know which xfs_ilock() call in >> > xfs_write() one of the mysqld-test processes is stuck on. >> >> No problem - BTW, I'm running this on a 2.6.33.3 kernel (same as the >> one before, although diff hardware). If you want (and are fine with me >> "destroying" the current state), I can upgrade it to a kernel of your >> choice and repeat the test overnight. >> >> Naturally I didn't have CONFIG_DEBUG_INFO in there... just changed >> that to Y and recompiled. I'm not entirely sure that this preserves >> all the offsets, but at least the BUG-HUNTING doc makes allusions that >> it would. >> >> (gdb) l *( xfs_write+0x2cc) >> 0xffffffff8124342d is in xfs_write (fs/xfs/linux-2.6/xfs_lrw.c:597). >> 592 if (!need_i_mutex && (mapping->nrpages || pos >> > xip->i_size)) { >> 593 xfs_iunlock(xip, XFS_ILOCK_EXCL|iolock); >> 594 iolock = XFS_IOLOCK_EXCL; >> 595 need_i_mutex = 1; >> 596 mutex_lock(&inode->i_mutex); >> 597 xfs_ilock(xip, XFS_ILOCK_EXCL|iolock); > > Make sense. Can you run 'l *(xfs_ilock+0x2c)' as well? I just need to > confirm which lock it has blocked on. (gdb) l *(xfs_ilock+0x2c) 0xffffffff81221001 is in xfs_ilock (fs/xfs/linux-2.6/mrlock.h:48). 43 down_read_nested(&mrp->mr_lock, subclass); 44 } 45 46 static inline void mrupdate_nested(mrlock_t *mrp, int subclass) 47 { 48 down_write_nested(&mrp->mr_lock, subclass); 49 #ifdef DEBUG 50 mrp->mr_writer = 1; 51 #endif 52 } _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs