Re: [PATCH] pcmcia: irq probe can be done without risking an IRQstorm

From: Thomas Gleixner
Date: Thu Apr 26 2007 - 13:30:10 EST


On Wed, 2007-04-25 at 21:18 -0700, Andrew Morton wrote:
> On Thu, 5 Apr 2007 14:09:36 +0100 Alan Cox <alan@xxxxxxxxxxxxxxxxxxx> wrote:
>
> > Nowdays you can ask for an IRQ to be allocated but not enabled, when
> > PCMCIA was written this was not true and this feature is thus not used
> >
> > Signed-off-by: Alan Cox <alan@xxxxxxxxxx>
> >
> > diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.21-rc5-mm4/drivers/pcmcia/pcmcia_resource.c linux-2.6.21-rc5-mm4/drivers/pcmcia/pcmcia_resource.c
> > --- linux.vanilla-2.6.21-rc5-mm4/drivers/pcmcia/pcmcia_resource.c 2007-04-03 16:52:14.000000000 +0100
> > +++ linux-2.6.21-rc5-mm4/drivers/pcmcia/pcmcia_resource.c 2007-04-03 17:10:42.000000000 +0100
> > @@ -810,8 +810,11 @@
> > type = IRQF_SHARED;
> > if (req->Attributes & IRQ_TYPE_DYNAMIC_SHARING)
> > type = IRQF_SHARED;
> > #ifdef CONFIG_PCMCIA_PROBE
> > + if (!(req->Attributes & IRQ_HANDLE_PRESENT))
> > + type |= IRQ_NOAUTOEN;
> > +
> > if (s->irq.AssignedIRQ != 0) {
> > /* If the interrupt is already assigned, it must be the same */
> > irq = s->irq.AssignedIRQ;
>
> alpha:
>
> drivers/pcmcia/pcmcia_resource.c: In function 'pcmcia_request_irq':
> drivers/pcmcia/pcmcia_resource.c:816: error: 'IRQ_NOAUTOEN' undeclared (first use in this function)
> drivers/pcmcia/pcmcia_resource.c:816: error: (Each undeclared identifier is reported only once
> drivers/pcmcia/pcmcia_resource.c:816: error: for each function it appears in.)
>
> Problem is, IRQ_NOAUTOEN is a generic-irq thing, so architectures which
> don't use generic-irqs break. And it's defined in linux/irq.h which
> (stupidly) cannot be included in generic code.

Hrmpf. We need a IRQF_NOAUTOEN, which can be handed to reqeust_irq().

I cook a patch.

tglx


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/