On Tue, Jul 04, 2006 at 04:41:16AM +0400, Alexey Dobriyan wrote:
> 2.6.17-912b2539e1e062cec73e2e61448e507f7719bd08
>
> While trying to remove 2 small files, 2 empty dirs and 1 empty dir on
> xfs partition
Probably spurious. xfs_ilock can be called on both the parent and child,
which wouldn't be a deadlock.
> =============================================
> [ INFO: possible recursive locking detected ]
> ---------------------------------------------
> rm/7596 is trying to acquire lock:
> (&(&ip->i_lock)->mr_lock){----}, at: [<c01d3d0d>] xfs_ilock+0x4d/0x6e
>
> but task is already holding lock:
> (&(&ip->i_lock)->mr_lock){----}, at: [<c01d3d0d>] xfs_ilock+0x4d/0x6e
>
> other info that might help us debug this:
> 3 locks held by rm/7596:
> #0: (&inode->i_mutex/1){--..}, at: [<c0155ff9>] do_rmdir+0x6c/0xc3
> #1: (&inode->i_mutex){--..}, at: [<c02b21a0>] mutex_lock+0x8/0xa
> #2: (&(&ip->i_lock)->mr_lock){----}, at: [<c01d3d0d>] xfs_ilock+0x4d/0x6e
>
> stack backtrace:
> [<c0102b4c>] show_trace+0xd/0xf
> [<c0102c1e>] dump_stack+0x17/0x19
> [<c012558c>] print_deadlock_bug+0x94/0x9e
> [<c01255d4>] check_deadlock+0x3e/0x52
> [<c0126e34>] __lock_acquire+0x747/0x7ea
> [<c012746f>] lock_acquire+0x5e/0x7e
> [<c01241b8>] down_write+0x19/0x33
> [<c01d3d0d>] xfs_ilock+0x4d/0x6e
> [<c01eefae>] xfs_lock_dir_and_entry+0x8e/0xc8
> [<c01efeb5>] xfs_rmdir+0x1ce/0x3c9
> [<c01f8a45>] xfs_vn_rmdir+0x1c/0x44
> [<c0155f57>] vfs_rmdir+0x5c/0x92
> [<c0156019>] do_rmdir+0x8c/0xc3
> [<c0156060>] sys_rmdir+0x10/0x12
> [<c0102677>] syscall_call+0x7/0xb
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
|