Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1031458AbXEDRuX (ORCPT ); Fri, 4 May 2007 13:50:23 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1031461AbXEDRuW (ORCPT ); Fri, 4 May 2007 13:50:22 -0400 Received: from caffeine.uwaterloo.ca ([129.97.134.17]:51253 "EHLO caffeine.csclub.uwaterloo.ca" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1031458AbXEDRuV (ORCPT ); Fri, 4 May 2007 13:50:21 -0400 Date: Fri, 4 May 2007 13:50:17 -0400 To: Frederik Deweerdt Cc: linux-kernel@vger.kernel.org, netdev@vger.kernel.org Subject: Re: Strange soft lockup detected message (looks like spin_lock bug in pcnet32) Message-ID: <20070504175017.GD8753@csclub.uwaterloo.ca> References: <20070503203143.GA8753@csclub.uwaterloo.ca> <20070504141024.GB8753@csclub.uwaterloo.ca> <20070504143326.GD24769@slug> <20070504151934.GA8754@csclub.uwaterloo.ca> <20070504153438.GE24769@slug> <20070504154009.GE8751@csclub.uwaterloo.ca> <20070504174456.GC8753@csclub.uwaterloo.ca> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20070504174456.GC8753@csclub.uwaterloo.ca> User-Agent: Mutt/1.5.13 (2006-08-11) From: lsorense@csclub.uwaterloo.ca (Lennart Sorensen) Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3292 Lines: 80 On Fri, May 04, 2007 at 01:44:56PM -0400, Lennart Sorensen wrote: > On Fri, May 04, 2007 at 11:40:09AM -0400, Lennart Sorensen wrote: > > On Fri, May 04, 2007 at 05:34:38PM +0200, Frederik Deweerdt wrote: > > > For the "what" part, see Documentation/lockdep-design.txt. You'll enable > > > it by with SPINLOCK_DEBUG, indeed. > > > > Well I hope to see it hit the BUG again soon then to see what it has to > > say. > > Well I didn't see anything for a while with SPINLOCK_DEBUG enabled > (maybe I didn't wait long enough). So I tried changing it to > spin_lock_irqsave, and that didn't go well. I got this as the result > now: > > onfiguring network interfaces...eth1: link up, 100Mbps, full-duplex > BUG: spinlock recursion on CPU#0, ifconfig/962 > lock: cf7a3304, .magic: dead4ead, .owner: ifconfig/962, .owner_cpu: 0 > [] dump_stack+0x24/0x30 > [] _raw_spin_lock+0x137/0x140 > [] _spin_lock_irqsave+0x1c/0x30 > [] pcnet32_interrupt+0x216/0x290 [pcnet32] > [] handle_IRQ_event+0x3d/0x70 > [] __do_IRQ+0x9c/0x120 > [] do_IRQ+0x25/0x60 > [] common_interrupt+0x1a/0x20 > [] __do_softirq+0x3a/0xa0 > [] do_softirq+0x2d/0x30 > [] irq_exit+0x37/0x40 > [] do_IRQ+0x2a/0x60 > [] common_interrupt+0x1a/0x20 > [] _spin_unlock_irqrestore+0x10/0x40 > [] pcnet32_open+0x27a/0x390 [pcnet32] > [] dev_open+0x39/0x80 > [] dev_change_flags+0xfa/0x130 > [] devinet_ioctl+0x4ff/0x6f0 > [] sock_ioctl+0xf4/0x1f0 > [] do_ioctl+0x2c/0x80 > [] vfs_ioctl+0x52/0x2f0 > [] sys_ioctl+0x6f/0x80 > [] syscall_call+0x7/0xb > [] 0xb7eebd04 > BUG: spinlock lockup on CPU#0, ifconfig/962, cf7a3304 > [] dump_stack+0x24/0x30 > [] _raw_spin_lock+0x10f/0x140 > [] _spin_lock_irqsave+0x1c/0x30 > [] pcnet32_interrupt+0x216/0x290 [pcnet32] > [] handle_IRQ_event+0x3d/0x70 > [] __do_IRQ+0x9c/0x120 > [] do_IRQ+0x25/0x60 > [] common_interrupt+0x1a/0x20 > [] __do_softirq+0x3a/0xa0 > [] do_softirq+0x2d/0x30 > [] irq_exit+0x37/0x40 > [] do_IRQ+0x2a/0x60 > [] common_interrupt+0x1a/0x20 > [] _spin_unlock_irqrestore+0x10/0x40 > [] pcnet32_open+0x27a/0x390 [pcnet32] > [] dev_open+0x39/0x80 > [] dev_change_flags+0xfa/0x130 > [] devinet_ioctl+0x4ff/0x6f0 > [] sock_ioctl+0xf4/0x1f0 > [] do_ioctl+0x2c/0x80 > [] vfs_ioctl+0x52/0x2f0 > [] sys_ioctl+0x6f/0x80 > [] syscall_call+0x7/0xb > [] 0xb7eebd04 > > Obviously that wasn't so good. Nevermind. I am obviously an idiot today placing spin_lock_irqsave both in place of spin_lock and spin_unlock. Yeah that will work well. Now to try with spin_lock_irqrestore or whatever it is called. -- Len Sorensen - 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/