lkml.org 
[lkml]   [2003]   [May]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
SubjectRe: [bug 2.5.69] xirc2ps_cs, irq 3: nobody cared, shutdown hangs
Date
On Sunday 11 May 2003 18:13, Zwane Mwaikambo wrote:
> On Sun, 11 May 2003, Daniel Ritz wrote:
> > hi
> >
> > i see that one on shutdown with a xircom ce3 10/100 16bit pcmcia network
> > card, driver xirc2ps_cs. the netdevice also never gets free, so the
> > shutdown never finishs. 2.5.68 also doesn't work, 2.5.67 does work.
>
> Interesting, eject with one of my PCMCIA (smc91c92) network cards also
> triggers an unhandled interrupt. I think the IRQ_NONE is incorrect here as
> the device really may have an interrupt to service.
>

ok, i tried that one, but no luck. still nobody cares. so it's that one:
if (int_status == 0xff) { /* card may be ejected */
DEBUG(3, "%s: interrupt %d for dead card\n", dev->name, irq);
handled = 0;
goto leave;
}

but it's not ejected, only a modpobe -r...

> Index: linux-2.5-cvs/drivers/net/pcmcia/xirc2ps_cs.c
> ===================================================================
> RCS file: /home/cvs/linux-2.5/drivers/net/pcmcia/xirc2ps_cs.c,v
> retrieving revision 1.19
> diff -u -p -B -r1.19 xirc2ps_cs.c
> --- linux-2.5-cvs/drivers/net/pcmcia/xirc2ps_cs.c 8 May 2003 05:16:27
> -0000 1.19 +++ linux-2.5-cvs/drivers/net/pcmcia/xirc2ps_cs.c 11 May 2003
> 15:20:03 -0000 @@ -1312,7 +1312,7 @@ xirc2ps_interrupt(int irq, void
> *dev_id,
> */
>
> if (!netif_device_present(dev))
> - return IRQ_NONE;
> + goto out;
>
> ioaddr = dev->base_addr;
> if (lp->mohawk) { /* must disable the interrupt */
> @@ -1515,6 +1515,7 @@ xirc2ps_interrupt(int irq, void *dev_id,
> * force an interrupt with this command:
> * PutByte(XIRCREG_CR, EnableIntr|ForceIntr);
> */
> + out:
> return IRQ_RETVAL(handled);
> } /* xirc2ps_interrupt */
>
> > unregister_netdevice: waiting for eth0 to become free. Usage count = 2
> > unregister_netdevice: waiting for eth0 to become free. Usage count = 2
> > unregister_netdevice: waiting for eth0 to become free. Usage count = 2
> > unregister_netdevice: waiting for eth0 to become free. Usage count = 2
>
> I can reproduce this, i'll have a look.

-
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/

\
 
 \ /
  Last update: 2005-03-22 13:35    [W:0.085 / U:0.164 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site