Re: [PATCH] genirq: ARM dyntick cleanup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Christoph Hellwig <[email protected]> wrote:

> On Mon, Jul 03, 2006 at 08:57:35AM +0200, Ingo Molnar wrote:
> > Christoph has had ideas for cleanups in the irq-header-files area for a 
> > long time. My rough battleplan would be this:
> > 
> > - linux/interrupt.h should remain the highlevel driver API [which can be
> >   used by both physical (genirq or non-genirq) or virtual platforms].
> >   Only this file should be included by drivers.
> 
> Yes.  Note that it's not quite there yet.  Non-genirq architectures currently
> have things like enable_irq/disable_irq in asm/irq.h  We really need to have
> those prototypes only in linux/interrupt.h.  Unfortunately at least m68k and
> sparc had those as macros so they'll need some tweaking first.
> 
> > - rename linux/irq.h to linux/irqchips.h, to make it less likely for
> >   drivers to include it accidentally.
> 
> I find the name rather odd, how bout linux/genirq.h instead?

yeah, that would be fine too. The "irq chips" name has the advantage 
that it points out that this stuff deals with actual hardware, but no 
strong feelings either way.

> > - rename asm/irq.h to asm/irqchips.h
> 
> Note that currently asm/irq.h is included all over.  

yeah, but only 335 times in drivers/*, so it's a 4 minute job to convert 
them over. (ok, i just did it to check - it results in a 144K patch and 
it took 50 seconds to do. I've attached the result.)

> > - most of linux/hardirq.h should merge into interrupt.h [the rest into
> >   linux/irqchips.h] and hardirq.h should be eliminated.
> 
> Yes.
> 
> > - merge asm/hardirq.h and asm/hw_irq.h into asm/irqchips.h.
> 
> I'm not sure we can get away with just one asm/*irq.h.  We need arch 
> bits for genirq and we need arch bits for what was in linux/hardirq.h 
> and I don't think we want to mix those up.  The latter is just 
> irq_cpustat_t which needs a big rework anyway to remove the arch 
> independent use of a arch- defined struct and use DECLARE_PERCPU for 
> each field in each architecture or a suitable per-arch meachnism.  The 
> only irq_cpustat_t field that the generic code uses is 
> __softirq_pending and we should rather have a function abstraction for 
> that.

ok, agreed.

	Ingo

Attachment: remove-asm-irq2.h.bz2
Description: BZip2 compressed data


[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux