From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-oa0-f46.google.com ([209.85.219.46]:64044 "EHLO mail-oa0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754839Ab3BXSxO (ORCPT ); Sun, 24 Feb 2013 13:53:14 -0500 Message-ID: <512A6197.2000908@lwfinger.net> (sfid-20130224_195346_289515_A4EE5B32) Date: Sun, 24 Feb 2013 12:53:11 -0600 From: Larry Finger MIME-Version: 1.0 To: =?UTF-8?B?TWljaGFlbCBCw7xzY2g=?= CC: =?UTF-8?B?UmFmYcWCIE1pxYJlY2tp?= , linux-wireless , b43-dev , LKML Subject: Re: Lockdep splat when unloading b43 References: <512A4E83.5090901@lwfinger.net> <20130224193239.3517e6ac@milhouse> In-Reply-To: <20130224193239.3517e6ac@milhouse> Content-Type: text/plain; charset=UTF-8; format=flowed Sender: linux-wireless-owner@vger.kernel.org List-ID: On 02/24/2013 12:32 PM, Michael Büsch wrote: > On Sun, 24 Feb 2013 11:31:47 -0600 > Larry Finger wrote: > >> With the current wireless-testing tree, unloading b43 produces the lockdep log >> splat copied below. My understanding of locking is deficient, and I would like >> to learn. Any help on understanding this problem is appreciated. > > A few questions: > Is there any reason for using the global workqueue and not mac80211's workqueue? My original thought was that we needed the firmware load queue before mac80211 was running for b43; however, I now realize that my thinking was wrong. > Why is the workqueue cancelled in the core_stop callback? Wouldn't it make more > sense to cancel it in bcma_remove/ssb_remove? It certainly would. > This would probably fix the circular dependency. But I'm not entirely sure, because > I'm not that familiar with the code anymore. I know that a lot has changed, but your instincts are still good. Thanks, Larry