From a37cbed308e7635a2e773e7de36841f3523493b8 Mon Sep 17 00:00:00 2001 From: Paul Mackerras Date: Sun, 16 Mar 2003 20:36:04 +1100 Subject: [PATCH] PPC32: Make sure interrupts are disabled in IPI handlers. --- arch/ppc/syslib/open_pic.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/arch/ppc/syslib/open_pic.c b/arch/ppc/syslib/open_pic.c index a6efd2c9a6112..33798a25a470f 100644 --- a/arch/ppc/syslib/open_pic.c +++ b/arch/ppc/syslib/open_pic.c @@ -580,14 +580,19 @@ void openpic_request_IPIs(void) if (OpenPIC == NULL) return; + /* IPIs are marked SA_INTERRUPT as they must run with irqs disabled */ request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset, - openpic_ipi_action, 0, "IPI0 (call function)", 0); + openpic_ipi_action, SA_INTERRUPT, + "IPI0 (call function)", 0); request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset+1, - openpic_ipi_action, 0, "IPI1 (reschedule)", 0); + openpic_ipi_action, SA_INTERRUPT, + "IPI1 (reschedule)", 0); request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset+2, - openpic_ipi_action, 0, "IPI2 (invalidate tlb)", 0); + openpic_ipi_action, SA_INTERRUPT, + "IPI2 (invalidate tlb)", 0); request_irq(OPENPIC_VEC_IPI+open_pic_irq_offset+3, - openpic_ipi_action, 0, "IPI3 (xmon break)", 0); + openpic_ipi_action, SA_INTERRUPT, + "IPI3 (xmon break)", 0); for ( i = 0; i < OPENPIC_NUM_IPI ; i++ ) openpic_enable_ipi(OPENPIC_VEC_IPI+open_pic_irq_offset+i); -- 2.53.0