Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757863Ab1FJUht (ORCPT ); Fri, 10 Jun 2011 16:37:49 -0400 Received: from mail-ww0-f44.google.com ([74.125.82.44]:52539 "EHLO mail-ww0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756617Ab1FJUhp (ORCPT ); Fri, 10 Jun 2011 16:37:45 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=lbEJghJ+T0zCx4rNaC4WkiKrlWuPyYBkq9vW74rdOqR0Yj2WzLGgFkHTZqZ8SXQh0J es773a0BoFE2O7yuUWV37/Q03Fmfph6l/R1uG74DVO5pniJDmmpJ75gJqUePZYFaNIio rGiBfXZO2t5C7i6jzEBuWqQsnJetIpKk4FN0E= MIME-Version: 1.0 Date: Fri, 10 Jun 2011 16:37:44 -0400 Message-ID: Subject: 3.0.0-rc2-git4 -- INFO: possible circular locking dependency detected From: Miles Lane To: LKML , Peter Zijlstra , Ingo Molnar , Johannes Berg Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 7708 Lines: 139 [ 330.762815] [ INFO: possible circular locking dependency detected ] [ 330.762819] 3.0.0-rc2-git4 #9 [ 330.762822] ------------------------------------------------------- [ 330.762825] kworker/0:0/4 is trying to acquire lock: [ 330.762828] (&rdev->mtx){+.+.+.}, at: [] cfg80211_netdev_notifier_call+0x275/0x4ff [cfg80211] [ 330.762845] [ 330.762846] but task is already holding lock: [ 330.762848] (&rdev->devlist_mtx){+.+.+.}, at: [] cfg80211_rfkill_set_block+0x28/0x70 [cfg80211] [ 330.762860] [ 330.762861] which lock already depends on the new lock. [ 330.762863] [ 330.762865] [ 330.762866] the existing dependency chain (in reverse order) is: [ 330.762869] [ 330.762870] -> #1 (&rdev->devlist_mtx){+.+.+.}: [ 330.762875] [] lock_acquire+0xda/0xff [ 330.762884] [] __mutex_lock_common+0x47/0x31d [ 330.762891] [] mutex_lock_nested+0x3b/0x40 [ 330.762896] [] cfg80211_netdev_notifier_call+0x385/0x4ff [cfg80211] [ 330.762906] [] notifier_call_chain.isra.2+0x7c/0xb3 [ 330.762912] [] raw_notifier_call_chain+0x12/0x14 [ 330.762918] [] call_netdevice_notifiers+0x45/0x4a [ 330.762925] [] __dev_notify_flags+0x32/0x56 [ 330.762930] [] dev_change_flags+0x43/0x4f [ 330.762936] [] do_setlink+0x2ab/0x774 [ 330.762941] [] rtnl_setlink+0xc8/0xe8 [ 330.762946] [] rtnetlink_rcv_msg+0x1e8/0x1fe [ 330.762952] [] netlink_rcv_skb+0x3e/0x8a [ 330.762958] [] rtnetlink_rcv+0x21/0x28 [ 330.762963] [] netlink_unicast+0xe7/0x151 [ 330.762968] [] netlink_sendmsg+0x28f/0x2d0 [ 330.762973] [] sock_sendmsg+0xe1/0x104 [ 330.762980] [] __sys_sendmsg+0x1d9/0x25d [ 330.762985] [] sys_sendmsg+0x3d/0x5b [ 330.762990] [] system_call_fastpath+0x16/0x1b [ 330.762996] [ 330.762997] -> #0 (&rdev->mtx){+.+.+.}: [ 330.763003] [] __lock_acquire+0xa5e/0xd52 [ 330.763008] [] lock_acquire+0xda/0xff [ 330.763013] [] __mutex_lock_common+0x47/0x31d [ 330.763019] [] mutex_lock_nested+0x3b/0x40 [ 330.763024] [] cfg80211_netdev_notifier_call+0x275/0x4ff [cfg80211] [ 330.763033] [] notifier_call_chain.isra.2+0x7c/0xb3 [ 330.763039] [] raw_notifier_call_chain+0x12/0x14 [ 330.763044] [] call_netdevice_notifiers+0x45/0x4a [ 330.763049] [] __dev_close_many+0x5a/0xd1 [ 330.763054] [] dev_close_many+0x7a/0xea [ 330.763059] [] dev_close+0x38/0x49 [ 330.763064] [] cfg80211_rfkill_set_block+0x46/0x70 [cfg80211] [ 330.763073] [] rfkill_set_block+0x80/0xf1 [rfkill] [ 330.763081] [] __rfkill_switch_all+0x3c/0x62 [rfkill] [ 330.763089] [] rfkill_switch_all+0x38/0x49 [rfkill] [ 330.763096] [] rfkill_op_handler+0x104/0x135 [rfkill] [ 330.763104] [] process_one_work+0x1c8/0x353 [ 330.763109] [] worker_thread+0xd5/0x159 [ 330.763115] [] kthread+0x9a/0xa2 [ 330.763120] [] kernel_thread_helper+0x4/0x10 [ 330.763126] [ 330.763127] other info that might help us debug this: [ 330.763128] [ 330.763131] Possible unsafe locking scenario: [ 330.763132] [ 330.763134] CPU0 CPU1 [ 330.763136] ---- ---- [ 330.763139] lock(&rdev->devlist_mtx); [ 330.763143] lock(&rdev->mtx); [ 330.763147] lock(&rdev->devlist_mtx); [ 330.763151] lock(&rdev->mtx); [ 330.763155] [ 330.763156] *** DEADLOCK *** [ 330.763157] [ 330.763160] 5 locks held by kworker/0:0/4: [ 330.763163] #0: (events){.+.+.+}, at: [] process_one_work+0x12b/0x353 [ 330.763172] #1: ((rfkill_op_work).work){+.+...}, at: [] process_one_work+0x12b/0x353 [ 330.763181] #2: (rfkill_global_mutex){+.+.+.}, at: [] rfkill_switch_all+0x24/0x49 [rfkill] [ 330.763191] #3: (rtnl_mutex){+.+.+.}, at: [] rtnl_lock+0x12/0x14 [ 330.763201] #4: (&rdev->devlist_mtx){+.+.+.}, at: [] cfg80211_rfkill_set_block+0x28/0x70 [cfg80211] [ 330.763214] [ 330.763214] stack backtrace: [ 330.763218] Pid: 4, comm: kworker/0:0 Not tainted 3.0.0-rc2-git4 #9 [ 330.763221] Call Trace: [ 330.763228] [] print_circular_bug+0x1f8/0x209 [ 330.763234] [] __lock_acquire+0xa5e/0xd52 [ 330.763245] [] ? cfg80211_netdev_notifier_call+0x275/0x4ff [cfg80211] [ 330.763251] [] lock_acquire+0xda/0xff [ 330.763260] [] ? cfg80211_netdev_notifier_call+0x275/0x4ff [cfg80211] [ 330.763267] [] __mutex_lock_common+0x47/0x31d [ 330.763271] [] ? cfg80211_netdev_notifier_call+0x275/0x4ff [cfg80211] [ 330.763271] [] ? cfg80211_netdev_notifier_call+0x275/0x4ff [cfg80211] [ 330.763271] [] ? cfg80211_unlock_rdev+0x1f/0x1f [cfg80211] [ 330.763271] [] mutex_lock_nested+0x3b/0x40 [ 330.763271] [] cfg80211_netdev_notifier_call+0x275/0x4ff [cfg80211] [ 330.763271] [] notifier_call_chain.isra.2+0x7c/0xb3 [ 330.763271] [] raw_notifier_call_chain+0x12/0x14 [ 330.763271] [] call_netdevice_notifiers+0x45/0x4a [ 330.763271] [] __dev_close_many+0x5a/0xd1 [ 330.763271] [] dev_close_many+0x7a/0xea [ 330.763271] [] dev_close+0x38/0x49 [ 330.763271] [] cfg80211_rfkill_set_block+0x46/0x70 [cfg80211] [ 330.763271] [] rfkill_set_block+0x80/0xf1 [rfkill] [ 330.763271] [] __rfkill_switch_all+0x3c/0x62 [rfkill] [ 330.763271] [] rfkill_switch_all+0x38/0x49 [rfkill] [ 330.763271] [] rfkill_op_handler+0x104/0x135 [rfkill] [ 330.763271] [] process_one_work+0x1c8/0x353 [ 330.763271] [] ? process_one_work+0x12b/0x353 [ 330.763271] [] ? rfkill_get_global_sw_state+0x12/0x12 [rfkill] [ 330.763271] [] worker_thread+0xd5/0x159 [ 330.763271] [] ? manage_workers.isra.22+0x16a/0x16a [ 330.763271] [] kthread+0x9a/0xa2 [ 330.763271] [] kernel_thread_helper+0x4/0x10 [ 330.763271] [] ? finish_task_switch+0x42/0xbb [ 330.763271] [] ? __switch_to+0xbc/0x1fb [ 330.763271] [] ? retint_restore_args+0xe/0xe [ 330.763271] [] ? __init_kthread_worker+0x55/0x55 [ 330.763271] [] ? gs_change+0xb/0xb -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/