public inbox for linux-arch@vger.kernel.org
 help / color / mirror / Atom feed
* [RFC] killing linux/irq.h
@ 2005-09-09 18:42 viro
  2005-09-11  7:50 ` Geert Uytterhoeven
  0 siblings, 1 reply; 5+ messages in thread
From: viro @ 2005-09-09 18:42 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-arch, linux-kernel

	We get regular portability bugs when somebody decides to include
linux/irq.h into a driver instead of asm/irq.h.  It's almost always a
wrong thing to do and, in fact, causes immediate breakage on e.g. arm.

	Here's what I'm going to do:
* check current includes of linux/irq.h; e.g. in arch/x86_64 all but two
had been 100% useless, one should've been asm/irq.h and one - asm/irq.h +
asm/hw_irq.h.  The only legitimate user of linux/irq.h on amd64 was
asm/hardirq.h.
Situation elsewhere in arch/* is similar - most of includes are not needed
at all.
* remove bogus includes, arch by arch for architectures that live in main
tree.  Switch ones that should've been asm/irq.h to that form.
* put the current contents of linux/irq.h to asm-generic/hardirq.h (which
is what it really is - declarations for hardirq code, relevant on many but
not all platforms).
* switch remaining users of linux/irq.h to asm-generic/hardirq.h (again, for
architectures that live in main tree)
* replace contents of linux/irq.h with #warning and
#include <asm-generic/hardirq.h>.
* after 2.6.14 kill linux/irq.h completely.

	Objections?  That variant leaves out-of-tree folks with window until
2.6.15 to convert and that's really more than enough...

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2005-09-15 16:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-09-09 18:42 [RFC] killing linux/irq.h viro
2005-09-11  7:50 ` Geert Uytterhoeven
2005-09-15 16:34   ` Matthew Wilcox
2005-09-15 16:40     ` Russell King
2005-09-15 16:42     ` Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox