From: Knut Petersen <Knut_Petersen@t-online.de>
To: linux-kernel <linux-kernel@vger.kernel.org>
Cc: Al Viro <viro@zeniv.linux.org.uk>, Jeff Mahoney <jeffm@suse.com>,
Linus Torvalds <torvalds@linux-foundation.org>,
reiserfs-devel@vger.kernel.org
Subject: [BUG 3.13.0-rc6] reiserfs possible circular locking dependency
Date: Fri, 03 Jan 2014 20:16:05 +0100 [thread overview]
Message-ID: <52C70C75.4050502@t-online.de> (raw)
[-- Attachment #1: Type: text/plain, Size: 135 bytes --]
Rebooting after a power failure on an openSuSE 13.1 system
with kernel 3.13.0-rc6 triggered the attached lockdep warning.
cu,
Knut
[-- Attachment #2: lockdep_reiser --]
[-- Type: text/plain, Size: 8128 bytes --]
[ 73.385211] REISERFS (device sdb4): checking transaction log (sdb4)
[ 73.465261] REISERFS (device sdb4): Using r5 hash to sort names
[ 73.533218] REISERFS (device sdb4): Removing [6064555 6678878 0x0 SD]..done
[ 73.544815] REISERFS (device sdb4): Removing [6064555 6670892 0x0 SD]..done
[ 73.554927] REISERFS (device sdb4): Removing [6064555 6657593 0x0 SD]..done
[ 73.564808] REISERFS (device sdb4): Removing [6064555 6646126 0x0 SD]..done
[ 73.582072] REISERFS (device sdb4): Removing [784966 6632977 0x0 SD]..done
[ 73.597909] REISERFS (device sdb4): There were 5 uncompleted unlinks/truncates. Completed
[ 73.636043]
[ 73.639788] ======================================================
[ 73.639788] [ INFO: possible circular locking dependency detected ]
[ 73.639788] 3.13.0-rc6-main #95 Not tainted
[ 73.639788] -------------------------------------------------------
[ 73.639788] systemd/1 is trying to acquire lock:
[ 73.639788] (&sbi->lock){+.+.+.}, at: [<c024b8a9>] reiserfs_write_lock+0x25/0x2f
[ 73.639788]
[ 73.639788] but task is already holding lock:
[ 73.639788] (&type->i_mutex_dir_key#3/3){+.+.+.}, at: [<c024a9e1>] open_xa_dir+0xe6/0x153
[ 73.639788]
[ 73.639788] which lock already depends on the new lock.
[ 73.639788]
[ 73.639788]
[ 73.639788] the existing dependency chain (in reverse order) is:
[ 73.639788]
[ 73.639788] -> #1 (&type->i_mutex_dir_key#3/3){+.+.+.}:
[ 73.639788] [<c0155767>] lock_acquire+0x72/0xc9
[ 73.639788] [<c054c2dc>] mutex_lock_nested+0x3a/0x27b
[ 73.639788] [<c024a937>] open_xa_dir+0x3c/0x153
[ 73.639788] [<c024aa99>] reiserfs_for_each_xattr+0x4b/0x1df
[ 73.639788] [<c024ad0f>] reiserfs_delete_xattrs+0x18/0x42
[ 73.639788] [<c0232d52>] reiserfs_evict_inode+0x84/0x138
[ 73.639788] [<c01eda6b>] evict+0x94/0x139
[ 73.639788] [<c01ee0cc>] iput+0x107/0x10d
[ 73.639788] [<c023c25c>] finish_unfinished+0x412/0x4e7
[ 73.639788] [<c023cbe3>] reiserfs_fill_super+0x8b2/0x9c6
[ 73.639788] [<c01dbeda>] mount_bdev+0x112/0x15a
[ 73.639788] [<c023a11a>] get_super_block+0x15/0x17
[ 73.639788] [<c01dc820>] mount_fs+0x5a/0x132
[ 73.639788] [<c01f096d>] vfs_kern_mount+0x4d/0xfb
[ 73.639788] [<c01f2d6e>] do_mount+0x732/0x87f
[ 73.639788] [<c01f308b>] SyS_mount+0x76/0xa5
[ 73.639788] [<c0554334>] sysenter_do_call+0x12/0x32
[ 73.639788]
[ 73.639788] -> #0 (&sbi->lock){+.+.+.}:
[ 73.639788] [<c0154c6f>] __lock_acquire+0xff7/0x1556
[ 73.639788] [<c0155767>] lock_acquire+0x72/0xc9
[ 73.639788] [<c054c2dc>] mutex_lock_nested+0x3a/0x27b
[ 73.639788] [<c024b8a9>] reiserfs_write_lock+0x25/0x2f
[ 73.639788] [<c02306ef>] reiserfs_lookup+0x4a/0xea
[ 73.639788] [<c01e0ad8>] lookup_real+0x25/0x38
[ 73.639788] [<c01e14cd>] __lookup_hash+0x2f/0x36
[ 73.639788] [<c01e3df3>] lookup_one_len+0xb7/0xc6
[ 73.639788] [<c024a9f3>] open_xa_dir+0xf8/0x153
[ 73.639788] [<c024ac43>] xattr_lookup+0x16/0xca
[ 73.639788] [<c024b20a>] reiserfs_xattr_get+0x36/0x20e
[ 73.639788] [<c024c301>] reiserfs_get_acl+0x8c/0x2c1
[ 73.639788] [<c01e18f6>] generic_permission+0xba/0x1d9
[ 73.639788] [<c024b62c>] reiserfs_permission+0x13/0x19
[ 73.639788] [<c01e205a>] __inode_permission+0x30/0x70
[ 73.639788] [<c01e20de>] inode_permission+0x44/0x47
[ 73.639788] [<c01e2128>] link_path_walk+0x47/0x5cc
[ 73.639788] [<c01e31cd>] path_lookupat+0x4d/0x572
[ 73.639788] [<c01e3716>] filename_lookup+0x24/0x8b
[ 73.639788] [<c01e37ad>] do_path_lookup+0x30/0x38
[ 73.639788] [<c01e3859>] kern_path_create+0x22/0xe9
[ 73.639788] [<c01e394f>] user_path_create+0x2f/0x42
[ 73.639788] [<c01e5c88>] SyS_mkdirat+0x32/0xb3
[ 73.639788] [<c01e5d20>] SyS_mkdir+0x17/0x19
[ 73.639788] [<c0554334>] sysenter_do_call+0x12/0x32
[ 73.639788]
[ 73.639788] other info that might help us debug this:
[ 73.639788]
[ 73.639788] Possible unsafe locking scenario:
[ 73.639788]
[ 73.639788] CPU0 CPU1
[ 73.639788] ---- ----
[ 73.639788] lock(&type->i_mutex_dir_key#3/3);
[ 73.639788] lock(&sbi->lock);
[ 73.639788] lock(&type->i_mutex_dir_key#3/3);
[ 73.639788] lock(&sbi->lock);
[ 73.639788]
[ 73.639788] *** DEADLOCK ***
[ 73.639788]
[ 73.639788] 1 lock held by systemd/1:
[ 73.639788] #0: (&type->i_mutex_dir_key#3/3){+.+.+.}, at: [<c024a9e1>] open_xa_dir+0xe6/0x153
[ 73.639788]
[ 73.639788] stack backtrace:
[ 73.639788] CPU: 0 PID: 1 Comm: systemd Not tainted 3.13.0-rc6-main #95
[ 73.639788] Hardware name: /i915GMm-HFS, BIOS 6.00 PG 09/14/2005
[ 73.639788] 00000000 c0ad4cd4 f6079afc c054945c f6079b2c c054729a c06d1d61 c06d1c60
[ 73.639788] c06d1c28 c06d1c49 c06d1c28 f6079b60 f606a010 f606a474 00000001 f606a48c
[ 73.639788] f6079b90 c0154c6f f606a474 00005218 00000001 00000000 f606a474 00000001
[ 73.639788] Call Trace:
[ 73.639788] [<c054945c>] dump_stack+0x16/0x18
[ 73.639788] [<c054729a>] print_circular_bug+0x22d/0x23a
[ 73.639788] [<c0154c6f>] __lock_acquire+0xff7/0x1556
[ 73.639788] [<c0155767>] lock_acquire+0x72/0xc9
[ 73.639788] [<c024b8a9>] ? reiserfs_write_lock+0x25/0x2f
[ 73.639788] [<c024b8a9>] ? reiserfs_write_lock+0x25/0x2f
[ 73.639788] [<c054c2dc>] mutex_lock_nested+0x3a/0x27b
[ 73.639788] [<c024b8a9>] ? reiserfs_write_lock+0x25/0x2f
[ 73.639788] [<c0154cb7>] ? __lock_acquire+0x103f/0x1556
[ 73.639788] [<c024b8a9>] reiserfs_write_lock+0x25/0x2f
[ 73.639788] [<c02306ef>] reiserfs_lookup+0x4a/0xea
[ 73.639788] [<c054e820>] ? _raw_spin_unlock+0x2c/0x3d
[ 73.639788] [<c0551bf8>] ? preempt_count_sub+0xa8/0xb5
[ 73.639788] [<c054e820>] ? _raw_spin_unlock+0x2c/0x3d
[ 73.639788] [<c01eb71b>] ? d_alloc+0x5c/0x63
[ 73.639788] [<c01e0ad8>] lookup_real+0x25/0x38
[ 73.639788] [<c01e14cd>] __lookup_hash+0x2f/0x36
[ 73.639788] [<c01e3df3>] lookup_one_len+0xb7/0xc6
[ 73.639788] [<c024a9f3>] open_xa_dir+0xf8/0x153
[ 73.639788] [<c0154662>] ? __lock_acquire+0x9ea/0x1556
[ 73.639788] [<c024ac43>] xattr_lookup+0x16/0xca
[ 73.639788] [<c024b20a>] reiserfs_xattr_get+0x36/0x20e
[ 73.639788] [<c054e820>] ? _raw_spin_unlock+0x2c/0x3d
[ 73.639788] [<c0551bf8>] ? preempt_count_sub+0xa8/0xb5
[ 73.639788] [<c024c301>] reiserfs_get_acl+0x8c/0x2c1
[ 73.639788] [<c01e18c9>] ? generic_permission+0x8d/0x1d9
[ 73.639788] [<c054e820>] ? _raw_spin_unlock+0x2c/0x3d
[ 73.639788] [<c0551bf8>] ? preempt_count_sub+0xa8/0xb5
[ 73.639788] [<c01e18f6>] generic_permission+0xba/0x1d9
[ 73.639788] [<c024b62c>] reiserfs_permission+0x13/0x19
[ 73.639788] [<c01e205a>] __inode_permission+0x30/0x70
[ 73.639788] [<c01e20de>] inode_permission+0x44/0x47
[ 73.639788] [<c01e2128>] link_path_walk+0x47/0x5cc
[ 73.639788] [<c0153a88>] ? trace_hardirqs_on+0xb/0xd
[ 73.639788] [<c01e31cd>] path_lookupat+0x4d/0x572
[ 73.639788] [<c01558eb>] ? lock_release_non_nested+0x12d/0x24f
[ 73.639788] [<c01c3434>] ? might_fault+0x31/0x6b
[ 73.639788] [<c01e3716>] filename_lookup+0x24/0x8b
[ 73.639788] [<c01e37ad>] do_path_lookup+0x30/0x38
[ 73.639788] [<c01e3859>] kern_path_create+0x22/0xe9
[ 73.639788] [<c01e1f61>] ? getname_flags+0x99/0x124
[ 73.639788] [<c01e394f>] user_path_create+0x2f/0x42
[ 73.639788] [<c01e5c88>] SyS_mkdirat+0x32/0xb3
[ 73.639788] [<c0554363>] ? sysenter_exit+0xf/0x16
[ 73.639788] [<c01e5d20>] SyS_mkdir+0x17/0x19
[ 73.639788] [<c0554334>] sysenter_do_call+0x12/0x32
[ 74.530517] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: discard,errors=remount-ro
[ 75.128158] ip6_tables: (C) 2000-2006 Netfilter Core Team
[ 75.195428] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[ 75.209902] ip_tables: (C) 2000-2006 Netfilter Core Team
next reply other threads:[~2014-01-03 19:16 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-03 19:16 Knut Petersen [this message]
2014-01-03 19:46 ` [BUG 3.13.0-rc6] reiserfs possible circular locking dependency Linus Torvalds
2014-01-03 22:04 ` Jeff Mahoney
2014-01-15 23:29 ` Jeff Mahoney
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52C70C75.4050502@t-online.de \
--to=knut_petersen@t-online.de \
--cc=jeffm@suse.com \
--cc=linux-kernel@vger.kernel.org \
--cc=reiserfs-devel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
--cc=viro@zeniv.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox