From: Eugene Surovegin This patch fixes bug in PPC4xx disable_irq implementation. We need to ACK parent UIC to prevent false triggering in case IRQ we just disabled was already pending. Signed-off-by: Eugene Surovegin Signed-off-by: Andrew Morton --- 25-akpm/arch/ppc/syslib/ppc4xx_pic.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) diff -puN arch/ppc/syslib/ppc4xx_pic.c~ppc32-ppc4xx-pic-ack-parent-uic-in-disable_irq arch/ppc/syslib/ppc4xx_pic.c --- 25/arch/ppc/syslib/ppc4xx_pic.c~ppc32-ppc4xx-pic-ack-parent-uic-in-disable_irq Fri Feb 18 17:01:31 2005 +++ 25-akpm/arch/ppc/syslib/ppc4xx_pic.c Fri Feb 18 17:01:31 2005 @@ -4,7 +4,7 @@ * Interrupt controller driver for PowerPC 4xx-based processors. * * Eugene Surovegin or - * Copyright (c) 2004 Zultys Technologies + * Copyright (c) 2004, 2005 Zultys Technologies * * Based on original code by * Copyright (c) 1999 Grant Erickson @@ -49,6 +49,7 @@ static void ppc4xx_uic##n##_disable(unsi { \ ppc_cached_irq_mask[n] &= ~IRQ_MASK_UIC##n(irq); \ mtdcr(DCRN_UIC_ER(UIC##n), ppc_cached_irq_mask[n]); \ + ACK_UIC##n##_PARENT \ } \ \ static void ppc4xx_uic##n##_ack(unsigned int irq) \ _