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; _ ------------------------------------------------------- This SF.Net email is sponsored by: NEC IT Guy Games. How far can you shotput a projector? How fast can you ride your desk chair down the office luge track? If you want to score the big prize, get to know the little guy. Play to win an NEC 61" plasma display: http://www.necitguy.com/?r=20 _______________________________________________ User-mode-linux-devel mailing list User-mode-linux-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel