lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sun, 7 Feb 2010 17:22:16 +0800
From:	Dave Young <hidave.darkstar@...il.com>
To:	Peter Zijlstra <peterz@...radead.org>
Cc:	Alan Stern <stern@...land.harvard.edu>,
	"Eric W. Biederman" <ebiederm@...ssion.com>,
	Greg KH <gregkh@...e.de>, Thomas Gleixner <tglx@...utronix.de>,
	Cong Wang <amwang@...hat.com>,
	Kernel development list <linux-kernel@...r.kernel.org>,
	Tejun Heo <tj@...nel.org>, Miles Lane <miles.lane@...il.com>,
	Heiko Carstens <heiko.carstens@...ibm.com>,
	Benjamin Herrenschmidt <benh@...nel.crashing.org>,
	Larry Finger <Larry.Finger@...inger.net>,
	Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [Patch 0/2] sysfs: fix s_active lockdep warning

On Fri, Feb 05, 2010 at 04:41:57PM +0100, Peter Zijlstra wrote:
> On Fri, 2010-02-05 at 10:30 -0500, Alan Stern wrote:
> > On Fri, 5 Feb 2010, Peter Zijlstra wrote:
> > 
> > > Right, so this device stuff is much more complicated than I was led to
> > > believe ;-)
> > 
> > Haven't I told you all along that tree-structured locking is
> > complicated?  :-)
> 
> Well, regular tree's aren't all that complicated, but multiple
> inter-locking trees is a whole different story indeed.
> 

I ever tried converting device semaphore to mutex, but failed with same issue.

At least now there's no lockdep solution for it, so I recommend revert
the mutex converting patch.

following lockdep warning with rc6-mm1:

[    0.397123] 
[    0.397124] =============================================
[    0.397359] [ INFO: possible recursive locking detected ]
[    0.397480] 2.6.33-rc6-mm1 #1
[    0.397596] ---------------------------------------------
[    0.397717] swapper/1 is trying to acquire lock:
[    0.397836]  (&dev->mutex){+.+...}, at: [<c12662e4>] __driver_attach+0x38/0x63
[    0.398162] 
[    0.398162] but task is already holding lock:
[    0.398393]  (&dev->mutex){+.+...}, at: [<c12662d8>] __driver_attach+0x2c/0x63
[    0.399999] 
[    0.399999] other info that might help us debug this:
[    0.399999] 1 lock held by swapper/1:
[    0.399999]  #0:  (&dev->mutex){+.+...}, at: [<c12662d8>] __driver_attach+0x2c/0x63
[    0.399999] 
[    0.399999] stack backtrace:
[    0.399999] Pid: 1, comm: swapper Not tainted 2.6.33-rc6-mm1 #1
[    0.399999] Call Trace:
[    0.399999]  [<c13d5851>] ? printk+0xf/0x11
[    0.399999]  [<c105460c>] __lock_acquire+0x880/0xc0d
[    0.399999]  [<c13d66e4>] ? __mutex_unlock_slowpath+0xf0/0xff
[    0.399999]  [<c1054a34>] lock_acquire+0x9b/0xb8
[    0.399999]  [<c12662e4>] ? __driver_attach+0x38/0x63
[    0.399999]  [<c13d685c>] __mutex_lock_common+0x35/0x2f2
[    0.399999]  [<c12662e4>] ? __driver_attach+0x38/0x63
[    0.399999]  [<c13d6bb7>] mutex_lock_nested+0x30/0x38
[    0.399999]  [<c12662e4>] ? __driver_attach+0x38/0x63
[    0.399999]  [<c12662e4>] __driver_attach+0x38/0x63
[    0.399999]  [<c1265a43>] bus_for_each_dev+0x3d/0x67
[    0.399999]  [<c1265f8f>] driver_attach+0x14/0x16
[    0.399999]  [<c12662ac>] ? __driver_attach+0x0/0x63
[    0.399999]  [<c126541c>] bus_add_driver+0xc4/0x20c
[    0.399999]  [<c1266553>] driver_register+0x8b/0xeb
[    0.399999]  [<c11d8e3a>] acpi_bus_register_driver+0x3a/0x3c
[    0.399999]  [<c165dc9a>] acpi_ec_init+0x2b/0x4a
[    0.399999]  [<c165daf8>] acpi_init+0x289/0x2c8
[    0.399999]  [<c165d86f>] ? acpi_init+0x0/0x2c8
[    0.399999]  [<c1001139>] do_one_initcall+0x4c/0x13f
[    0.399999]  [<c163d315>] kernel_init+0x123/0x174
[    0.399999]  [<c163d1f2>] ? kernel_init+0x0/0x174
[    0.399999]  [<c10035ba>] kernel_thread_helper+0x6/0x10
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ