From: Stephen Rothwell Dont enable interrupts during interrupt processing on iseries --- 25-akpm/arch/ppc64/kernel/irq.c | 4 ++++ 1 files changed, 4 insertions(+) diff -puN arch/ppc64/kernel/irq.c~ppc64-iseries_do_IRQ arch/ppc64/kernel/irq.c --- 25/arch/ppc64/kernel/irq.c~ppc64-iseries_do_IRQ 2004-03-14 15:35:11.304220080 -0800 +++ 25-akpm/arch/ppc64/kernel/irq.c 2004-03-14 15:35:11.306219776 -0800 @@ -374,8 +374,10 @@ static inline int handle_irq_event(int i int status = 0; int retval = 0; +#ifndef CONFIG_PPC_ISERIES if (!(action->flags & SA_INTERRUPT)) local_irq_enable(); +#endif do { status |= action->flags; @@ -384,7 +386,9 @@ static inline int handle_irq_event(int i } while (action); if (status & SA_SAMPLE_RANDOM) add_interrupt_randomness(irq); +#ifndef CONFIG_PPC_ISERIES local_irq_disable(); +#endif return retval; } _