From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from s131.mittwaldmedien.de ([62.216.178.31]:13453 "EHLO s131.mittwaldmedien.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752625AbYCZOor (ORCPT ); Wed, 26 Mar 2008 10:44:47 -0400 From: Holger Schurig To: libertas-dev@lists.infradead.org Subject: Re: [PATCH] libertas: fix spinlock recursion bug Date: Wed, 26 Mar 2008 15:41:48 +0100 Cc: Dan Williams , linux-wireless@vger.kernel.org, "John W. Linville" References: <200803191524.21866.hs4233@mail.mn-solutions.de> In-Reply-To: <200803191524.21866.hs4233@mail.mn-solutions.de> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Message-Id: <200803261541.48877.hs4233@mail.mn-solutions.de> (sfid-20080326_144452_888276_D75C0149) Sender: linux-wireless-owner@vger.kernel.org List-ID: Hmm, that isn't the end of my spinlock problems. When I'm associated and ping, I get another recursion: libertas assoc: associated to 00:13:19:80:da:30 BUG: spinlock recursion on CPU#0, lbs_main/5566 lock: f58b58d8, .magic: dead4ead, .owner: lbs_main/5566, .owner_cpu: 0 Pid: 5566, comm: lbs_main Not tainted 2.6.25-rc5-wl #19 [] spin_bug+0x76/0xb1 [] _raw_spin_lock+0x34/0xc9 [] _spin_lock_irqsave+0x17/0x1c [] lbs_hard_start_xmit+0x61/0x4e2 [libertas] [] ? _spin_unlock+0x8/0x1f [] ? cache_alloc_refill+0x18c/0x439 [] dev_hard_start_xmit+0x16f/0x1dc [] __qdisc_run+0x7a/0x14e [] dev_queue_xmit+0x119/0x23b [] neigh_resolve_output+0x20a/0x236 [] neigh_update+0x2c0/0x36a [] ? eth_header_cache_update+0x0/0x12 [] arp_process+0x4d6/0x50e [] ? skb_release_data+0x84/0x89 [] ? __kfree_skb+0x61/0x64 [] arp_rcv+0xa3/0xb3 [] netif_receive_skb+0x1f7/0x26a [] process_backlog+0x5b/0xa5 [] net_rx_action+0x7f/0x142 [] __do_softirq+0x38/0x70 [] do_softirq+0x25/0x2a [] netif_rx_ni+0x24/0x3e [] lbs_process_rxed_packet+0x755/0x7c0 [libertas] [] ? __alloc_skb+0x4c/0xf8 [] if_cs_get_int_status+0x22a/0x3d8 [libertas_cs] [] lbs_thread+0x2fe/0x745 [libertas] [] ? default_wake_function+0x0/0xd [] ? lbs_thread+0x0/0x745 [libertas] [] kthread+0x39/0x60 [] ? kthread+0x0/0x60 [] kernel_thread_helper+0x7/0x10 =======================