lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 28 May 2007 14:31:48 -0400
From:	lsorense@...lub.uwaterloo.ca (Lennart Sorensen)
To:	Emmanuel Fust? <emmanuel.fuste@...oste.net>
Cc:	romieu <romieu@...zoreil.com>,
	tsbogend <tsbogend@...ha.franken.de>,
	pcnet32 <pcnet32@...izon.net>, netdev <netdev@...r.kernel.org>
Subject: Re: [PCNET32] Lock solid with netconsole

On Mon, May 28, 2007 at 05:25:51PM +0200, Emmanuel Fust? wrote:
> > Any difference if you disable the debug messages in the pcnet32
> > driver and you apply the patch below ?
> > 
> > diff --git a/drivers/net/pcnet32.c b/drivers/net/pcnet32.c
> > index 9c171a7..be4513f 100644
> > --- a/drivers/net/pcnet32.c
> > +++ b/drivers/net/pcnet32.c
> > @@ -2556,11 +2556,12 @@ pcnet32_interrupt(int irq, void *dev_id)
> >  	unsigned long ioaddr;
> >  	u16 csr0;
> >  	int boguscnt = max_interrupt_work;
> > +	unsigned long flags;
> >  
> >  	ioaddr = dev->base_addr;
> >  	lp = netdev_priv(dev);
> >  
> > -	spin_lock(&lp->lock);
> > +	spin_lock_irqsave(&lp->lock, flags);
> >  
> >  	csr0 = lp->a.read_csr(ioaddr, CSR0);
> >  	while ((csr0 & 0x8f00) && --boguscnt >= 0) {
> > @@ -2632,7 +2633,7 @@ pcnet32_interrupt(int irq, void *dev_id)
> >  		printk(KERN_DEBUG "%s: exiting interrupt, csr0=%#4.4x.\n",
> >  		       dev->name, lp->a.read_csr(ioaddr, CSR0));
> >  
> > -	spin_unlock(&lp->lock);
> > +	spin_unlock_irqrestore(&lp->lock, flags);
> >  
> >  	return IRQ_HANDLED;
> >  }
> > 
> Hi,
> Tested under very high console activity and it no longer freeze.

Hmm, I have been seeing lockups too and asked about doing something
almost exactly the same as this recently, but was told that it shouldn't
need irqs disabled at this point.  Well if it makes netconsole more
stable, I think I will try adding it to and see if it makes the problems
go away for good (my problem only happens at random and can be days
between it happening).

--
Len Sorensen
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ