public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* XFS: lockdep warning: BUG: held lock freed!
@ 2006-09-12 16:36 Luca
  2006-09-14  0:31 ` David Chatterton
  0 siblings, 1 reply; 2+ messages in thread
From: Luca @ 2006-09-12 16:36 UTC (permalink / raw)
  To: xfs-masters; +Cc: linux-kernel, xfs

Hi,
I see that this error has alredy been observed with 2.6.17-mm; I'm
running kernel 2.6.18-rc5 (x86, UP, with PREEMPT) and may have
additional information. In my case the FS was affected by 2.6.17
directory corruption (I forgot to run xfs_repair on this machine); after
the FS was shut down I rebooted the machine (with init=/bin/bash, rootfs
on ext2, so it was not affected) and mounted XFS partition read-only to
recover the log.
I tried to reproduce with "simple" crashes (i.e. write a file and
reboot, I don't want to trash the FS too much ;)) without success, so
the error may be related to directory corruption.

lockdep message:

SGI XFS with no debug enabled
XFS mounting filesystem hda8
Starting XFS recovery on filesystem: hda8 (logdev: internal)

=========================
[ BUG: held lock freed! ]
-------------------------
mount/290 is freeing memory ef798b70-ef798baf, with a lock still held there!
 (&(&ip->i_lock)->mr_lock){--..}, at: [<f193e4ed>] xfs_ilock+0x7d/0xb0 [xfs]
3 locks held by mount/290:
 #0:  (&type->s_umount_key#14){--..}, at: [<b01689cc>] sget+0x19c/0x320
 #1:  (&(&ip->i_iolock)->mr_lock){--..}, at: [<f193e50e>] xfs_ilock+0x9e/0xb0 [xfs]
 #2:  (&(&ip->i_lock)->mr_lock){--..}, at: [<f193e4ed>] xfs_ilock+0x7d/0xb0 [xfs]

stack backtrace:
 [<b0104376>] show_trace_log_lvl+0x176/0x1a0
 [<b0104a32>] show_trace+0x12/0x20
 [<b0104a99>] dump_stack+0x19/0x20
 [<b0135699>] debug_check_no_locks_freed+0x169/0x180
 [<b01d5c71>] __init_rwsem+0x21/0x60
 [<f193e855>] xfs_inode_lock_init+0x25/0x80 [xfs]
 [<f193ee4a>] xfs_iget+0x18a/0x5b8 [xfs]
 [<f194f0d6>] xlog_recover_process_iunlinks+0x316/0x500 [xfs]
 [<f194f57e>] xlog_recover_finish+0x2be/0x380 [xfs]
 [<f194af47>] xfs_log_mount_finish+0x37/0x50 [xfs]
 [<f1953b70>] xfs_mountfs+0xe50/0x1020 [xfs]
 [<f1945579>] xfs_ioinit+0x29/0x40 [xfs]
 [<f195af8c>] xfs_mount+0x65c/0xa10 [xfs]
 [<f196d855>] vfs_mount+0x25/0x30 [xfs]
 [<f196d676>] xfs_fs_fill_super+0x76/0x1e0 [xfs]
 [<b01692bc>] get_sb_bdev+0xec/0x130
 [<f196c7f1>] xfs_fs_get_sb+0x21/0x30 [xfs]
 [<b0168dc0>] vfs_kern_mount+0x40/0xa0
 [<b0168e76>] do_kern_mount+0x36/0x50
 [<b017f2ee>] do_mount+0x22e/0x610
 [<b017f73f>] sys_mount+0x6f/0xb0
 [<b0103173>] syscall_call+0x7/0xb
 [<a7ef00be>] 0xa7ef00be
 [<b0104a32>] show_trace+0x12/0x20
 [<b0104a99>] dump_stack+0x19/0x20
 [<b0135699>] debug_check_no_locks_freed+0x169/0x180
 [<b01d5c71>] __init_rwsem+0x21/0x60
 [<f193e855>] xfs_inode_lock_init+0x25/0x80 [xfs]
 [<f193ee4a>] xfs_iget+0x18a/0x5b8 [xfs]
 [<f194f0d6>] xlog_recover_process_iunlinks+0x316/0x500 [xfs]
 [<f194f57e>] xlog_recover_finish+0x2be/0x380 [xfs]
 [<f194af47>] xfs_log_mount_finish+0x37/0x50 [xfs]
 [<f1953b70>] xfs_mountfs+0xe50/0x1020 [xfs]
 [<f1945579>] xfs_ioinit+0x29/0x40 [xfs]
 [<f195af8c>] xfs_mount+0x65c/0xa10 [xfs]
 [<f196d855>] vfs_mount+0x25/0x30 [xfs]
 [<f196d676>] xfs_fs_fill_super+0x76/0x1e0 [xfs]
 [<b01692bc>] get_sb_bdev+0xec/0x130
 [<f196c7f1>] xfs_fs_get_sb+0x21/0x30 [xfs]
 [<b0168dc0>] vfs_kern_mount+0x40/0xa0
 [<b0168e76>] do_kern_mount+0x36/0x50
 [<b017f2ee>] do_mount+0x22e/0x610
 [<b017f73f>] sys_mount+0x6f/0xb0
 [<b0103173>] syscall_call+0x7/0xb
Ending XFS recovery on filesystem: hda8 (logdev: internal)


Luca
-- 
Home: http://kronoz.cjb.net
Runtime error 6D at f000:a12f : user incompetente

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: XFS: lockdep warning: BUG: held lock freed!
  2006-09-12 16:36 XFS: lockdep warning: BUG: held lock freed! Luca
@ 2006-09-14  0:31 ` David Chatterton
  0 siblings, 0 replies; 2+ messages in thread
From: David Chatterton @ 2006-09-14  0:31 UTC (permalink / raw)
  To: Luca; +Cc: xfs-masters, linux-kernel, xfs

Luca,

I've added this report to a list of lockdep related work we need to
do in XFS.

Thanks,

David



Luca wrote:
> Hi,
> I see that this error has alredy been observed with 2.6.17-mm; I'm
> running kernel 2.6.18-rc5 (x86, UP, with PREEMPT) and may have
> additional information. In my case the FS was affected by 2.6.17
> directory corruption (I forgot to run xfs_repair on this machine); after
> the FS was shut down I rebooted the machine (with init=/bin/bash, rootfs
> on ext2, so it was not affected) and mounted XFS partition read-only to
> recover the log.
> I tried to reproduce with "simple" crashes (i.e. write a file and
> reboot, I don't want to trash the FS too much ;)) without success, so
> the error may be related to directory corruption.
> 
> lockdep message:
> 
> SGI XFS with no debug enabled
> XFS mounting filesystem hda8
> Starting XFS recovery on filesystem: hda8 (logdev: internal)
> 
> =========================
> [ BUG: held lock freed! ]
> -------------------------
> mount/290 is freeing memory ef798b70-ef798baf, with a lock still held there!
>  (&(&ip->i_lock)->mr_lock){--..}, at: [<f193e4ed>] xfs_ilock+0x7d/0xb0 [xfs]
> 3 locks held by mount/290:
>  #0:  (&type->s_umount_key#14){--..}, at: [<b01689cc>] sget+0x19c/0x320
>  #1:  (&(&ip->i_iolock)->mr_lock){--..}, at: [<f193e50e>] xfs_ilock+0x9e/0xb0 [xfs]
>  #2:  (&(&ip->i_lock)->mr_lock){--..}, at: [<f193e4ed>] xfs_ilock+0x7d/0xb0 [xfs]
> 
> stack backtrace:
>  [<b0104376>] show_trace_log_lvl+0x176/0x1a0
>  [<b0104a32>] show_trace+0x12/0x20
>  [<b0104a99>] dump_stack+0x19/0x20
>  [<b0135699>] debug_check_no_locks_freed+0x169/0x180
>  [<b01d5c71>] __init_rwsem+0x21/0x60
>  [<f193e855>] xfs_inode_lock_init+0x25/0x80 [xfs]
>  [<f193ee4a>] xfs_iget+0x18a/0x5b8 [xfs]
>  [<f194f0d6>] xlog_recover_process_iunlinks+0x316/0x500 [xfs]
>  [<f194f57e>] xlog_recover_finish+0x2be/0x380 [xfs]
>  [<f194af47>] xfs_log_mount_finish+0x37/0x50 [xfs]
>  [<f1953b70>] xfs_mountfs+0xe50/0x1020 [xfs]
>  [<f1945579>] xfs_ioinit+0x29/0x40 [xfs]
>  [<f195af8c>] xfs_mount+0x65c/0xa10 [xfs]
>  [<f196d855>] vfs_mount+0x25/0x30 [xfs]
>  [<f196d676>] xfs_fs_fill_super+0x76/0x1e0 [xfs]
>  [<b01692bc>] get_sb_bdev+0xec/0x130
>  [<f196c7f1>] xfs_fs_get_sb+0x21/0x30 [xfs]
>  [<b0168dc0>] vfs_kern_mount+0x40/0xa0
>  [<b0168e76>] do_kern_mount+0x36/0x50
>  [<b017f2ee>] do_mount+0x22e/0x610
>  [<b017f73f>] sys_mount+0x6f/0xb0
>  [<b0103173>] syscall_call+0x7/0xb
>  [<a7ef00be>] 0xa7ef00be
>  [<b0104a32>] show_trace+0x12/0x20
>  [<b0104a99>] dump_stack+0x19/0x20
>  [<b0135699>] debug_check_no_locks_freed+0x169/0x180
>  [<b01d5c71>] __init_rwsem+0x21/0x60
>  [<f193e855>] xfs_inode_lock_init+0x25/0x80 [xfs]
>  [<f193ee4a>] xfs_iget+0x18a/0x5b8 [xfs]
>  [<f194f0d6>] xlog_recover_process_iunlinks+0x316/0x500 [xfs]
>  [<f194f57e>] xlog_recover_finish+0x2be/0x380 [xfs]
>  [<f194af47>] xfs_log_mount_finish+0x37/0x50 [xfs]
>  [<f1953b70>] xfs_mountfs+0xe50/0x1020 [xfs]
>  [<f1945579>] xfs_ioinit+0x29/0x40 [xfs]
>  [<f195af8c>] xfs_mount+0x65c/0xa10 [xfs]
>  [<f196d855>] vfs_mount+0x25/0x30 [xfs]
>  [<f196d676>] xfs_fs_fill_super+0x76/0x1e0 [xfs]
>  [<b01692bc>] get_sb_bdev+0xec/0x130
>  [<f196c7f1>] xfs_fs_get_sb+0x21/0x30 [xfs]
>  [<b0168dc0>] vfs_kern_mount+0x40/0xa0
>  [<b0168e76>] do_kern_mount+0x36/0x50
>  [<b017f2ee>] do_mount+0x22e/0x610
>  [<b017f73f>] sys_mount+0x6f/0xb0
>  [<b0103173>] syscall_call+0x7/0xb
> Ending XFS recovery on filesystem: hda8 (logdev: internal)
> 
> 
> Luca

-- 
David Chatterton
XFS Engineering Manager
SGI Australia

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-09-14  0:32 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-09-12 16:36 XFS: lockdep warning: BUG: held lock freed! Luca
2006-09-14  0:31 ` David Chatterton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox