Re: enable_irq/disable_irq

From: Christoph Hellwig
Date: Tue Oct 26 2004 - 06:09:54 EST


On Tue, Oct 26, 2004 at 03:49:08AM -0700, Andrew Morton wrote:
> Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:
> >
> > On Tue, Oct 26, 2004 at 03:20:18AM -0700, Andrew Morton wrote:
> > > As all platforms must provide enable_irq() and disable_irq() we should put
> > > the declarations in a generic header. Why not put them in
> > > linux/interrupt.h?
> >
> > I looked into that a few days ago, but unfortunately a few architectures
> > have inlined variants.
>
> So where's the official declaration of enable_irq()? For some
> architectures, linux/interrupt.h. For others, asm/irq.h. That's screwed.
>
> I suggest that we move this:
>
> #ifdef CONFIG_GENERIC_HARDIRQS
> extern void disable_irq_nosync(unsigned int irq);
> extern void disable_irq(unsigned int irq);
> extern void enable_irq(unsigned int irq);
> #endif
>
> out of interrupt.h and into each relevant asm/irq.h.
>
> Maybe. It still sucks.

Well, ingo just moved it from <asm/irq.h> to <linux/interrupt.h> protected
by CONFIG_GENERIC_HARDIRQS, but maybe we should move it back. Or say that
performance doesn't matter so much for these and they should be out of line
for all architectures.

What do the architecture maintainers think about this?
-
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/