From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@bugzilla.kernel.org Subject: [Bug 42918] New: fcoe: Enabling VN2VN mode triggers a circular locking complaint Date: Tue, 13 Mar 2012 12:16:57 GMT Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Return-path: Received: from bugzilla.kernel.org ([198.145.19.204]:50949 "EHLO bugzilla.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751459Ab2CMMQ6 (ORCPT ); Tue, 13 Mar 2012 08:16:58 -0400 Received: from bugzilla.kernel.org (localhost [127.0.0.1]) by bugzilla.kernel.org (8.14.5/8.14.5) with ESMTP id q2DCGvcg014492 for ; Tue, 13 Mar 2012 12:16:57 GMT Sender: linux-scsi-owner@vger.kernel.org List-Id: linux-scsi@vger.kernel.org To: linux-scsi@vger.kernel.org https://bugzilla.kernel.org/show_bug.cgi?id=42918 URL: http://comments.gmane.org/gmane.linux.scsi.open-fcoe.d evel/11451?set_lines=100000 Summary: fcoe: Enabling VN2VN mode triggers a circular locking complaint Product: IO/Storage Version: 2.5 Kernel Version: 3.3.0-rc7 Platform: All OS/Version: Linux Tree: Mainline Status: NEW Severity: normal Priority: P1 Component: SCSI AssignedTo: linux-scsi@vger.kernel.org ReportedBy: bvanassche@acm.org Regression: No Kernel version: 3.3.0-rc7 How to reproduce: # modprobe fcoe # echo eth0 >/sys/module/libfcoe/parameters/create_vn2vn Result: # dmesg device eth0 entered promiscuous mode scsi3 : FCoE Driver host3: libfc: Link up on port (000000) ====================================================== [ INFO: possible circular locking dependency detected ] 3.3.0-rc7-scst-debug+ #1 Not tainted ------------------------------------------------------- kworker/2:0/14 is trying to acquire lock: (rtnl_mutex){+.+.+.}, at: [] rtnl_lock+0x14/0x20 but task is already holding lock: (&fip->ctlr_mutex){+.+...}, at: [] fcoe_ctlr_timer_work+0x3e7/0xb60 [libfcoe] which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #1 (&fip->ctlr_mutex){+.+...}: [] lock_acquire+0x80/0x1b0 [] mutex_lock_nested+0x6d/0x340 [] fcoe_ctlr_link_up+0x22/0x180 [libfcoe] [] fcoe_create+0x47e/0x6e0 [fcoe] [] fcoe_transport_create+0x143/0x250 [libfcoe] [] param_attr_store+0x30/0x60 [] module_attr_store+0x26/0x40 [] sysfs_write_file+0xae/0x100 [] vfs_write+0x8f/0x160 [] sys_write+0x3d/0x70 [] syscall_call+0x7/0xb -> #0 (rtnl_mutex){+.+.+.}: [] __lock_acquire+0x140b/0x1720 [] lock_acquire+0x80/0x1b0 [] mutex_lock_nested+0x6d/0x340 [] rtnl_lock+0x14/0x20 [] fcoe_update_src_mac+0x2c/0xb0 [fcoe] [] fcoe_ctlr_timer_work+0x712/0xb60 [libfcoe] [] process_one_work+0x179/0x5d0 [] worker_thread+0x121/0x2d0 [] kthread+0x7d/0x90 [] kernel_thread_helper+0x6/0x10 other info that might help us debug this: Possible unsafe locking scenario: CPU0 CPU1 ---- ---- lock(&fip->ctlr_mutex); lock(rtnl_mutex); lock(&fip->ctlr_mutex); lock(rtnl_mutex); *** DEADLOCK *** 3 locks held by kworker/2:0/14: #0: (events){.+.+.+}, at: [] process_one_work+0x105/0x5d0 #1: ((&fip->timer_work)){+.+...}, at: [] process_one_work+0x105/0x5d0 #2: (&fip->ctlr_mutex){+.+...}, at: [] fcoe_ctlr_timer_work+0x3e7/0xb60 [libfcoe] stack backtrace: Pid: 14, comm: kworker/2:0 Not tainted 3.3.0-rc7 #1 Call Trace: [] ? printk+0x1d/0x1f [] print_circular_bug+0x1b4/0x1be [] __lock_acquire+0x140b/0x1720 [] lock_acquire+0x80/0x1b0 [] ? rtnl_lock+0x14/0x20 [] mutex_lock_nested+0x6d/0x340 [] ? rtnl_lock+0x14/0x20 [] ? rtnl_lock+0x14/0x20 [] ? fcoe_ctlr_timer_work+0x3e7/0xb60 [libfcoe] [] rtnl_lock+0x14/0x20 [] fcoe_update_src_mac+0x2c/0xb0 [fcoe] [] fcoe_ctlr_timer_work+0x712/0xb60 [libfcoe] [] ? local_clock+0x65/0x70 [] ? process_one_work+0x105/0x5d0 [] ? trace_hardirqs_on_caller+0xf4/0x180 [] process_one_work+0x179/0x5d0 [] ? process_one_work+0x105/0x5d0 [] ? fcoe_ctlr_vn_send_claim+0x40/0x40 [libfcoe] [] worker_thread+0x121/0x2d0 [] ? rescuer_thread+0x1d0/0x1d0 [] kthread+0x7d/0x90 [] ? __init_kthread_worker+0x60/0x60 [] kernel_thread_helper+0x6/0x10 host3: Assigned Port ID 0092b5 -- Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug.