From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Morton Subject: Fw: Re: 2.6.21-rc5-mm4 Date: Wed, 4 Apr 2007 19:04:02 -0700 Message-ID: <20070404190402.609cbd65.akpm@linux-foundation.org> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: "Antonino A. Daplas" To: netdev@vger.kernel.org Return-path: Received: from smtp.osdl.org ([65.172.181.24]:38098 "EHLO smtp.osdl.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932563AbXDECEN (ORCPT ); Wed, 4 Apr 2007 22:04:13 -0400 Sender: netdev-owner@vger.kernel.org List-Id: netdev.vger.kernel.org This looks like a locking bug in the ipv6 changes in davem's devel tree. There are no relevant changes to drivers/net/sc92031.c in rc5-mm4. Begin forwarded message: Date: Thu, 05 Apr 2007 08:56:38 +0800 From: "Antonino A. Daplas" To: Andrew Morton Cc: linux-kernel@vger.kernel.org Subject: Re: 2.6.21-rc5-mm4 On Mon, 2007-04-02 at 22:47 -0700, Andrew Morton wrote: > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.21-rc5/2.6.21-rc5-mm4/ > > - The oops in git-net.patch has been fixed, so that tree has been restored. > It is huge. > > - Added the device-mapper development tree to the -mm lineup (Alasdair > Kergon). It is a quilt tree, living at > ftp://ftp.kernel.org/pub/linux/kernel/people/agk/patches/2.6/editing/. > > - Added davidel's signalfd stuff. > > > I see this tracing (from the lock-dependency validator?) for several -mm versions. This is from a Silan ethernet card (CONFIG_SC92031). 00:0b.0 Ethernet controller: Hangzhou Silan Microelectronics Co., Ltd. Unknown device 2031 (rev 01) Other than the tracing, I'm not having any problems. Tony ====================================================== [ INFO: soft-safe -> soft-unsafe lock order detected ] 2.6.21-rc5-mm4-default #44 ------------------------------------------------------ ip/3036 [HC0[0]:SC0[2]:HE1:SE0] is trying to acquire: (&priv->lock){--..}, at: [] sc92031_set_multicast_list +0x14/0x2d [sc92031] and this task is already holding: (&dev->_xmit_lock){-...}, at: [] dev_mc_upload+0x14/0x3a which would create a new lock dependency: (&dev->_xmit_lock){-...} -> (&priv->lock){--..} but this new dependency connects a soft-irq-safe lock: (&mc->mca_lock){-+..} ... which became soft-irq-safe at: [] __lock_acquire+0x3d7/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_bh+0x30/0x3d [] mld_ifc_timer_expire+0x15b/0x21d [ipv6] [] run_timer_softirq+0xf1/0x14e [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] error_code+0x71/0x78 [] 0xffffffff to a soft-irq-unsafe lock: (&priv->lock){--..} ... which became soft-irq-unsafe at: ... [] __lock_acquire+0x46b/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] sc92031_open+0xcc/0x16f [sc92031] [] dev_open+0x33/0x6e [] dev_change_flags+0x57/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff other info that might help us debug this: 2 locks held by ip/3036: #0: (rtnl_mutex){--..}, at: [] mutex_lock+0x24/0x28 #1: (&dev->_xmit_lock){-...}, at: [] dev_mc_upload+0x14/0x3a the soft-irq-safe lock's dependencies: -> (&mc->mca_lock){-+..} ops: 9 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_bh+0x30/0x3d [] igmp6_group_added+0x1b/0x120 [ipv6] [] ipv6_dev_mc_inc+0x2f9/0x346 [ipv6] [] ipv6_add_dev+0x232/0x240 [ipv6] [] ____versions+0x1e8b/0xfffff9c8 [x_tables] [] ____versions+0x1d54/0xfffff9c8 [x_tables] [] sys_init_module+0x1252/0x138f [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff in-softirq-W at: [] __lock_acquire+0x3d7/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_bh+0x30/0x3d [] mld_ifc_timer_expire+0x15b/0x21d [ipv6] [] run_timer_softirq+0xf1/0x14e [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] error_code+0x71/0x78 [] 0xffffffff hardirq-on-W at: [] __lock_acquire+0x441/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_bh+0x30/0x3d [] igmp6_group_added+0x1b/0x120 [ipv6] [] ipv6_dev_mc_inc+0x2f9/0x346 [ipv6] [] ipv6_add_dev+0x232/0x240 [ipv6] [] ____versions+0x1e8b/0xfffff9c8 [x_tables] [] ____versions+0x1d54/0xfffff9c8 [x_tables] [] sys_init_module+0x1252/0x138f [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff } ... key at: [] __key.29988+0x0/0xfffe9535 [ipv6] -> (&dev->_xmit_lock){-...} ops: 18 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_bh+0x30/0x3d [] dev_mc_upload+0x14/0x3a [] dev_change_flags+0x31/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff hardirq-on-W at: [] __lock_acquire+0x441/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_bh+0x30/0x3d [] dev_mc_upload+0x14/0x3a [] dev_change_flags+0x31/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff } ... key at: [] __key.29726+0x0/0x8 -> (&rp->lock){++..} ops: 55 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] rhine_get_stats+0x2d/0x9d [via_rhine] [] rtnl_fill_ifinfo+0x2ea/0x432 [] rtmsg_ifinfo+0x63/0xe0 [] rtnetlink_event+0x3b/0x3f [] notifier_call_chain+0x2b/0x4a [] __raw_notifier_call_chain +0x19/0x1f [] raw_notifier_call_chain +0x1a/0x1c [] register_netdevice+0x2e0/0x2ea [] register_netdev+0x40/0x4d [] rhine_init_one+0x495/0x652 [via_rhine] [] pci_device_probe+0x3c/0x61 [] driver_probe_device+0xe8/0x168 [] __driver_attach+0x77/0xb1 [] bus_for_each_dev+0x3a/0x5f [] driver_attach+0x19/0x1b [] bus_add_driver+0x76/0x17e [] driver_register+0x79/0x7f [] __pci_register_driver+0x5c/0x8c [] __ksymtab_ac97_bus_type +0x0/0xfffffff6 [ac97_bus] [] sys_init_module+0x1252/0x138f [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff in-hardirq-W at: [] __lock_acquire+0x3b0/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] rhine_interrupt+0x16a/0x696 [via_rhine] [] handle_IRQ_event+0x1a/0x48 [] handle_level_irq+0x7c/0xc6 [] do_IRQ+0x59/0x76 [] common_interrupt+0x2e/0x34 [] rcu_process_callbacks+0x15/0x26 [] tasklet_action+0x40/0x6c [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] error_code+0x71/0x78 [] 0xffffffff in-softirq-W at: [] __lock_acquire+0x3d7/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irq+0x31/0x3e [] rhine_start_tx+0x1ad/0x244 [via_rhine] [] dev_hard_start_xmit+0x216/0x274 [] __qdisc_run+0xca/0x17f [] dev_queue_xmit+0x155/0x26b [] mld_sendpack+0x1f7/0x335 [ipv6] [] mld_ifc_timer_expire +0x1f6/0x21d [ipv6] [] run_timer_softirq+0xf1/0x14e [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] error_code+0x71/0x78 [] 0xffffffff } ... key at: [] __key.21685+0x0/0xffffc5fa [via_rhine] ... acquired at: [] __lock_acquire+0x9e8/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irq+0x31/0x3e [] rhine_start_tx+0x1ad/0x244 [via_rhine] [] dev_hard_start_xmit+0x216/0x274 [] __qdisc_run+0xca/0x17f [] dev_queue_xmit+0x155/0x26b [] mld_sendpack+0x1f7/0x335 [ipv6] [] mld_ifc_timer_expire+0x1f6/0x21d [ipv6] [] run_timer_softirq+0xf1/0x14e [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] error_code+0x71/0x78 [] 0xffffffff ... acquired at: [] __lock_acquire+0x9e8/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_bh+0x30/0x3d [] dev_mc_add+0x33/0x141 [] igmp6_group_added+0x58/0x120 [ipv6] [] ipv6_dev_mc_inc+0x2f9/0x346 [ipv6] [] ipv6_add_dev+0x232/0x240 [ipv6] [] addrconf_notify+0x47/0x7d0 [ipv6] [] register_netdevice_notifier+0x35/0x5f [] ____versions+0x1eb6/0xfffff9c8 [x_tables] [] ____versions+0x1d54/0xfffff9c8 [x_tables] [] sys_init_module+0x1252/0x138f [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff -> (&parent->list_lock){++..} ops: 14182 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] cache_alloc_refill+0x4f/0x44f [] kmem_cache_zalloc+0x50/0x97 [] kmem_cache_create+0x166/0x447 [] kmem_cache_init+0x160/0x3c7 [] start_kernel+0x217/0x38d [<00000000>] 0x0 [] 0xffffffff in-hardirq-W at: [] __lock_acquire+0x3b0/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] cache_flusharray+0x22/0xa5 [] kmem_cache_free+0x62/0x8e [] mempool_free_slab+0x11/0x13 [] mempool_free+0x64/0x6c [] bio_free+0x2d/0x31 [] bio_fs_destructor+0x11/0x13 [] bio_put+0x28/0x2a [] end_bio_bh_io_sync+0x39/0x3f [] bio_endio+0x53/0x5b [] __end_that_request_first +0xcf/0x35d [] end_that_request_first+0xe/0x10 [] ide_end_request+0x87/0xd1 [ide_core] [] ide_dma_intr+0x58/0x98 [ide_core] [] ide_intr+0x16b/0x1cf [ide_core] [] handle_IRQ_event+0x1a/0x48 [] handle_level_irq+0x7c/0xc6 [] do_IRQ+0x59/0x76 [] common_interrupt+0x2e/0x34 [] cpu_idle+0x44/0x5e [] rest_init+0x21/0x25 [] start_kernel+0x385/0x38d [<00000000>] 0x0 [] 0xffffffff in-softirq-W at: [] __lock_acquire+0x3d7/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] cache_flusharray+0x22/0xa5 [] kfree+0x5e/0x8c [] free_task+0x11/0x21 [] __put_task_struct+0x10f/0x118 [] delayed_put_task_struct+0x3e/0x45 [] __rcu_process_callbacks +0x103/0x16c [] rcu_process_callbacks+0x15/0x26 [] tasklet_action+0x40/0x6c [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] acpi_ps_alloc_op+0x5b/0x98 [] acpi_ps_parse_loop+0x6d9/0x714 [] acpi_ps_parse_aml+0x68/0x246 [] acpi_ps_execute_method +0x11f/0x1c1 [] acpi_ns_evaluate+0xa0/0x100 [] acpi_ut_evaluate_object +0x52/0x18c [] acpi_ev_match_prw_and_gpe +0x1f/0xbe [] acpi_ns_walk_namespace+0xf9/0x114 [] acpi_ev_initialize_gpe_block +0x4d/0x86 [] acpi_ev_install_fadt_gpes +0x27/0x47 [] acpi_enable_subsystem+0x83/0x8f [] acpi_init+0x57/0x1cd [] kernel_init+0xb9/0x22a [] kernel_thread_helper+0x7/0x10 [] 0xffffffff } ... key at: [] __key.17030+0x0/0x8 -> (&zone->lock){++..} ops: 6654 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] free_pages_bulk+0x1a/0x195 [] free_hot_cold_page+0x112/0x156 [] free_hot_page+0xd/0xf [] __free_pages+0x38/0x4a [] __free_pages_bootmem+0x61/0x65 [] free_all_bootmem_core +0xd6/0x147 [] free_all_bootmem+0x10/0x12 [] mem_init+0x2a/0x2d0 [] start_kernel+0x212/0x38d [<00000000>] 0x0 [] 0xffffffff in-hardirq-W at: [] __lock_acquire+0x3b0/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] free_pages_bulk+0x1a/0x195 [] free_hot_cold_page+0x112/0x156 [] free_hot_page+0xd/0xf [] __free_pages+0x38/0x4a [] free_pages+0x20/0x22 [] kmem_freepages+0x9c/0xa4 [] slab_destroy+0x61/0x79 [] free_block+0xb7/0xf4 [] cache_flusharray+0x77/0xa5 [] kmem_cache_free+0x62/0x8e [] mempool_free_slab+0x11/0x13 [] mempool_free+0x64/0x6c [] bio_free+0x2d/0x31 [] bio_fs_destructor+0x11/0x13 [] bio_put+0x28/0x2a [] end_bio_bh_io_sync+0x39/0x3f [] bio_endio+0x53/0x5b [] __end_that_request_first +0xcf/0x35d [] end_that_request_first+0xe/0x10 [] ide_end_request+0x87/0xd1 [ide_core] [] ide_dma_intr+0x58/0x98 [ide_core] [] ide_intr+0x16b/0x1cf [ide_core] [] handle_IRQ_event+0x1a/0x48 [] handle_level_irq+0x7c/0xc6 [] do_IRQ+0x59/0x76 [] common_interrupt+0x2e/0x34 [] cpu_idle+0x44/0x5e [] rest_init+0x21/0x25 [] start_kernel+0x385/0x38d [<00000000>] 0x0 [] 0xffffffff in-softirq-W at: [] __lock_acquire+0x3d7/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] __free_pages_ok+0xf6/0x278 [] __free_pages+0x43/0x4a [] free_pages+0x20/0x22 [] kmem_freepages+0x9c/0xa4 [] slab_destroy+0x61/0x79 [] free_block+0xb7/0xf4 [] cache_flusharray+0x77/0xa5 [] kfree+0x5e/0x8c [] free_task+0x11/0x21 [] __put_task_struct+0x10f/0x118 [] delayed_put_task_struct +0x3e/0x45 [] __rcu_process_callbacks +0x103/0x16c [] rcu_process_callbacks+0x15/0x26 [] tasklet_action+0x40/0x6c [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] __mutex_lock_slowpath +0x238/0x240 [] mutex_lock+0x24/0x28 [] do_lookup+0x69/0x13d [] __link_path_walk+0x814/0xc69 [] link_path_walk+0x49/0xbc [] do_path_lookup+0x18a/0x1dc [] __path_lookup_intent_open +0x44/0x75 [] path_lookup_open+0x21/0x27 [] open_exec+0x27/0xa5 [] do_execve+0x36/0x1f1 [] sys_execve+0x2e/0x50 [] syscall_call+0x7/0xb [] 0xffffffff } ... key at: [] __key.20983+0x0/0x8 ... acquired at: [] __lock_acquire+0x9e8/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] __free_pages_ok+0xf6/0x278 [] __free_pages+0x43/0x4a [] free_pages+0x20/0x22 [] kmem_freepages+0x9c/0xa4 [] slab_destroy+0x61/0x79 [] free_block+0xb7/0xf4 [] cache_flusharray+0x77/0xa5 [] kfree+0x5e/0x8c [] free_task+0x11/0x21 [] __put_task_struct+0x10f/0x118 [] delayed_put_task_struct+0x3e/0x45 [] __rcu_process_callbacks+0x103/0x16c [] rcu_process_callbacks+0x15/0x26 [] tasklet_action+0x40/0x6c [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] __mutex_lock_slowpath+0x238/0x240 [] mutex_lock+0x24/0x28 [] do_lookup+0x69/0x13d [] __link_path_walk+0x814/0xc69 [] link_path_walk+0x49/0xbc [] do_path_lookup+0x18a/0x1dc [] __path_lookup_intent_open+0x44/0x75 [] path_lookup_open+0x21/0x27 [] open_exec+0x27/0xa5 [] do_execve+0x36/0x1f1 [] sys_execve+0x2e/0x50 [] syscall_call+0x7/0xb [] 0xffffffff -> (pgd_lock){....} ops: 119 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] pgd_ctor+0x25/0x7d [] cache_alloc_refill+0x399/0x44f [] kmem_cache_alloc+0x50/0x78 [] pgd_alloc+0x15/0x17 [] mm_init+0xa6/0xcd [] mm_alloc+0x2e/0x32 [] do_execve+0x69/0x1f1 [] sys_execve+0x2e/0x50 [] syscall_call+0x7/0xb [] 0xffffffff } ... key at: [] pgd_lock+0x1c/0x40 ... acquired at: [] __lock_acquire+0x9e8/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] pgd_dtor+0x13/0x44 [] slab_destroy+0x33/0x79 [] free_block+0xb7/0xf4 [] cache_flusharray+0x77/0xa5 [] kmem_cache_free+0x62/0x8e [] pgd_free+0x12/0x14 [] __mmdrop+0x1c/0x33 [] __sched_text_start+0x546/0x59f [] do_wait+0x90e/0xa04 [] sys_wait4+0x30/0x32 [] sys_waitpid+0x27/0x29 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff ... acquired at: [] __lock_acquire+0x9e8/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] cache_alloc_refill+0x4f/0x44f [] __kmalloc+0x75/0x9a [] __alloc_skb+0x6b/0x11b [] sock_alloc_send_skb+0x7c/0x1a9 [] mld_newpack+0x5d/0x172 [ipv6] [] add_grhead+0x24/0xa4 [ipv6] [] add_grec+0x32f/0x35a [ipv6] [] mld_ifc_timer_expire+0x1c7/0x21d [ipv6] [] run_timer_softirq+0xf1/0x14e [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] error_code+0x71/0x78 [] 0xffffffff the soft-irq-unsafe lock's dependencies: -> (&priv->lock){--..} ops: 2 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] sc92031_open+0xcc/0x16f [sc92031] [] dev_open+0x33/0x6e [] dev_change_flags+0x57/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff softirq-on-W at: [] __lock_acquire+0x46b/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] sc92031_open+0xcc/0x16f [sc92031] [] dev_open+0x33/0x6e [] dev_change_flags+0x57/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff hardirq-on-W at: [] __lock_acquire+0x441/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] sc92031_open+0xcc/0x16f [sc92031] [] dev_open+0x33/0x6e [] dev_change_flags+0x57/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff } ... key at: [] __key.22056+0x0/0xffffd670 [sc92031] -> (lweventlist_lock){....} ops: 1 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] linkwatch_fire_event+0x58/0xae [] netif_carrier_off+0x1a/0x1c [] _sc92031_reset+0x1a5/0x1dd [sc92031] [] sc92031_open+0xd3/0x16f [sc92031] [] dev_open+0x33/0x6e [] dev_change_flags+0x57/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff } ... key at: [] lweventlist_lock+0x1c/0x28 ... acquired at: [] __lock_acquire+0x9e8/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] linkwatch_fire_event+0x58/0xae [] netif_carrier_off+0x1a/0x1c [] _sc92031_reset+0x1a5/0x1dd [sc92031] [] sc92031_open+0xd3/0x16f [sc92031] [] dev_open+0x33/0x6e [] dev_change_flags+0x57/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff -> (&cwq->lock){++..} ops: 8986 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] __queue_work+0x12/0x33 [] queue_work+0x28/0x33 [] call_usermodehelper_keys +0xc5/0xea [] kobject_uevent_env+0x3d3/0x42b [] kobject_uevent+0xd/0x12 [] device_add+0x32f/0x518 [] device_register+0x15/0x19 [] device_create+0x77/0x99 [] vtconsole_class_init+0x71/0xb5 [] kernel_init+0xb9/0x22a [] kernel_thread_helper+0x7/0x10 [] 0xffffffff in-hardirq-W at: [] __lock_acquire+0x3b0/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] __queue_work+0x12/0x33 [] queue_work+0x28/0x33 [] schedule_work+0x12/0x14 [] schedule_bh+0x15/0x17 [] floppy_interrupt+0x168/0x192 [] floppy_hardint+0x1c/0xbc [] handle_IRQ_event+0x1a/0x48 [] handle_level_irq+0x7c/0xc6 [] do_IRQ+0x59/0x76 [] common_interrupt+0x2e/0x34 [] cpu_idle+0x44/0x5e [] rest_init+0x21/0x25 [] start_kernel+0x385/0x38d [<00000000>] 0x0 [] 0xffffffff in-softirq-W at: [] __lock_acquire+0x3d7/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] __queue_work+0x12/0x33 [] delayed_work_timer_fn+0x17/0x19 [] run_timer_softirq+0xf1/0x14e [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] cpu_idle+0x44/0x5e [] rest_init+0x21/0x25 [] start_kernel+0x385/0x38d [<00000000>] 0x0 [] 0xffffffff } ... key at: [] __key.10619+0x0/0x8 -> (&q->lock){++..} ops: 54469 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irq+0x31/0x3e [] wait_for_completion+0x29/0xaf [] keventd_create_kthread +0x32/0x62 [] kthread_create+0x63/0x9e [] cpu_callback+0x35/0x7a [] spawn_ksoftirqd+0x17/0x37 [] kernel_init+0x39/0x22a [] kernel_thread_helper+0x7/0x10 [] 0xffffffff in-hardirq-W at: [] __lock_acquire+0x3b0/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] __wake_up+0x15/0x42 [] insert_work+0x64/0x6b [] __queue_work+0x22/0x33 [] queue_work+0x28/0x33 [] schedule_work+0x12/0x14 [] schedule_bh+0x15/0x17 [] floppy_interrupt+0x168/0x192 [] floppy_hardint+0x1c/0xbc [] handle_IRQ_event+0x1a/0x48 [] handle_level_irq+0x7c/0xc6 [] do_IRQ+0x59/0x76 [] common_interrupt+0x2e/0x34 [] cpu_idle+0x44/0x5e [] rest_init+0x21/0x25 [] start_kernel+0x385/0x38d [<00000000>] 0x0 [] 0xffffffff in-softirq-W at: [] __lock_acquire+0x3d7/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] complete+0x15/0x4a [] wakeme_after_rcu+0xe/0x10 [] __rcu_process_callbacks +0x103/0x16c [] rcu_process_callbacks+0x15/0x26 [] tasklet_action+0x40/0x6c [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] cpu_idle+0x44/0x5e [] rest_init+0x21/0x25 [] start_kernel+0x385/0x38d [<00000000>] 0x0 [] 0xffffffff } ... key at: [] __key.14042+0x0/0x8 -> (&rq->rq_lock_key){++..} ops: 67981 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] init_idle+0x5c/0x86 [] sched_init+0x214/0x21c [] start_kernel+0xdd/0x38d [<00000000>] 0x0 [] 0xffffffff in-hardirq-W at: [] __lock_acquire+0x3b0/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] scheduler_tick+0x8e/0xbd [] update_process_times +0x4f/0x5a [] tick_periodic+0x69/0x75 [] tick_handle_periodic +0x12/0x63 [] timer_interrupt+0x11/0x18 [] handle_IRQ_event+0x1a/0x48 [] handle_level_irq+0x7c/0xc6 [] do_IRQ+0x59/0x76 [] common_interrupt+0x2e/0x34 [] request_standard_resources +0x75/0x2fc [] kernel_init+0xb9/0x22a [] kernel_thread_helper+0x7/0x10 [] 0xffffffff in-softirq-W at: [] __lock_acquire+0x3d7/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] task_rq_lock+0x1a/0x21 [] try_to_wake_up+0x18/0xa0 [] default_wake_function +0xe/0x10 [] __wake_up_common+0x32/0x55 [] complete+0x39/0x4a [] wakeme_after_rcu+0xe/0x10 [] __rcu_process_callbacks +0x103/0x16c [] rcu_process_callbacks +0x15/0x26 [] tasklet_action+0x40/0x6c [] __do_softirq+0x46/0x9c [] do_softirq+0x2d/0x46 [] irq_exit+0x3b/0x6b [] do_IRQ+0x5e/0x76 [] common_interrupt+0x2e/0x34 [] cpu_idle+0x44/0x5e [] rest_init+0x21/0x25 [] start_kernel+0x385/0x38d [<00000000>] 0x0 [] 0xffffffff } ... key at: [] per_cpu__runqueues+0x9f8/0xa00 ... acquired at: [] __lock_acquire+0x9e8/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock+0x2b/0x38 [] task_rq_lock+0x1a/0x21 [] try_to_wake_up+0x18/0xa0 [] default_wake_function+0xe/0x10 [] __wake_up_common+0x32/0x55 [] complete+0x39/0x4a [] kthread+0x87/0xcd [] kernel_thread_helper+0x7/0x10 [] 0xffffffff ... acquired at: [] __lock_acquire+0x9e8/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] __wake_up+0x15/0x42 [] insert_work+0x64/0x6b [] __queue_work+0x22/0x33 [] queue_work+0x28/0x33 [] call_usermodehelper_keys+0xc5/0xea [] kobject_uevent_env+0x3d3/0x42b [] kobject_uevent+0xd/0x12 [] device_add+0x32f/0x518 [] device_register+0x15/0x19 [] device_create+0x77/0x99 [] vtconsole_class_init+0x71/0xb5 [] kernel_init+0xb9/0x22a [] kernel_thread_helper+0x7/0x10 [] 0xffffffff ... acquired at: [] __lock_acquire+0x9e8/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] __queue_work+0x12/0x33 [] queue_work+0x28/0x33 [] queue_delayed_work+0xf/0x22 [] schedule_delayed_work+0x14/0x16 [] linkwatch_fire_event+0xa9/0xae [] netif_carrier_off+0x1a/0x1c [] _sc92031_reset+0x1a5/0x1dd [sc92031] [] sc92031_open+0xd3/0x16f [sc92031] [] dev_open+0x33/0x6e [] dev_change_flags+0x57/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff -> (ratelimit_lock){....} ops: 1 { initial-use at: [] __lock_acquire+0x486/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] __printk_ratelimit+0x1d/0xa5 [] printk_ratelimit+0x16/0x18 [] _sc92031_check_media+0x160/0x182 [sc92031] [] _sc92031_reset+0x1b5/0x1dd [sc92031] [] sc92031_open+0xd3/0x16f [sc92031] [] dev_open+0x33/0x6e [] dev_change_flags+0x57/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff } ... key at: [] ratelimit_lock.21472+0x1c/0x28 ... acquired at: [] __lock_acquire+0x9e8/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_irqsave+0x34/0x44 [] __printk_ratelimit+0x1d/0xa5 [] printk_ratelimit+0x16/0x18 [] _sc92031_check_media+0x160/0x182 [sc92031] [] _sc92031_reset+0x1b5/0x1dd [sc92031] [] sc92031_open+0xd3/0x16f [sc92031] [] dev_open+0x33/0x6e [] dev_change_flags+0x57/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 [] 0xffffffff stack backtrace: [] show_trace_log_lvl+0x1a/0x30 [] show_trace+0x12/0x14 [] dump_stack+0x16/0x18 [] check_usage+0x25a/0x264 [] __lock_acquire+0x94a/0xb93 [] lock_acquire+0x68/0x82 [] _spin_lock_bh+0x30/0x3d [] sc92031_set_multicast_list+0x14/0x2d [sc92031] [] __dev_mc_upload+0x26/0x28 [] dev_mc_upload+0x25/0x3a [] dev_open+0x4e/0x6e [] dev_change_flags+0x57/0x10b [] devinet_ioctl+0x235/0x546 [] inet_ioctl+0x89/0xaa [] sock_ioctl+0x1ac/0x1ca [] do_ioctl+0x1c/0x53 [] vfs_ioctl+0x1ec/0x203 [] sys_ioctl+0x49/0x62 [] sysenter_past_esp+0x5d/0x99 =======================