From: Paolo 'Blaisorblade' Giarrusso <[email protected]>, Chris Wedgwood <[email protected]>
CC: Ingo Molnar <[email protected]>
As suggested by Chris, we can make the "just added" method ->release
conditional to UML only (better: to archs requesting it, i.e. only UML
currently), so that other archs don't get this unneeded crud, and if UML won't
need it any more we can kill this.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <[email protected]>
---
linux-2.6.git-paolo/arch/um/Kconfig | 5 +++++
linux-2.6.git-paolo/include/linux/irq.h | 3 +++
linux-2.6.git-paolo/kernel/irq/manage.c | 4 ++++
3 files changed, 12 insertions(+)
diff -puN arch/um/Kconfig~uml-gen-irq-conditionalize arch/um/Kconfig
--- linux-2.6.git/arch/um/Kconfig~uml-gen-irq-conditionalize 2005-06-07 02:25:25.000000000 +0200
+++ linux-2.6.git-paolo/arch/um/Kconfig 2005-06-07 02:25:25.000000000 +0200
@@ -35,6 +35,11 @@ config GENERIC_CALIBRATE_DELAY
bool
default y
+# Used in kernel/irq/manage.c and include/linux/irq.h
+config IRQ_RELEASE_METHOD
+ bool
+ default y
+
menu "UML-specific options"
config MODE_TT
diff -puN kernel/irq/manage.c~uml-gen-irq-conditionalize kernel/irq/manage.c
--- linux-2.6.git/kernel/irq/manage.c~uml-gen-irq-conditionalize 2005-06-07 02:25:25.000000000 +0200
+++ linux-2.6.git-paolo/kernel/irq/manage.c 2005-06-07 02:25:25.000000000 +0200
@@ -6,6 +6,7 @@
* This file contains driver APIs to the irq subsystem.
*/
+#include <linux/config.h>
#include <linux/irq.h>
#include <linux/module.h>
#include <linux/random.h>
@@ -256,8 +257,11 @@ void free_irq(unsigned int irq, void *de
/* Found it - now remove it from the list of entries */
*pp = action->next;
+ /* Currently used only by UML, might disappear one day.*/
+#ifdef CONFIG_IRQ_RELEASE_METHOD
if (desc->handler->release)
desc->handler->release(irq, dev_id);
+#endif
if (!desc->action) {
desc->status |= IRQ_DISABLED;
diff -puN include/linux/irq.h~uml-gen-irq-conditionalize include/linux/irq.h
--- linux-2.6.git/include/linux/irq.h~uml-gen-irq-conditionalize 2005-06-07 02:25:25.000000000 +0200
+++ linux-2.6.git-paolo/include/linux/irq.h 2005-06-07 02:25:25.000000000 +0200
@@ -47,7 +47,10 @@ struct hw_interrupt_type {
void (*ack)(unsigned int irq);
void (*end)(unsigned int irq);
void (*set_affinity)(unsigned int irq, cpumask_t dest);
+ /* Currently used only by UML, might disappear one day.*/
+#ifdef CONFIG_IRQ_RELEASE_METHOD
void (*release)(unsigned int irq, void *dev_id);
+#endif
};
typedef struct hw_interrupt_type hw_irq_controller;
_
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[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]