Commit a37cbed3 authored by Paul Mackerras's avatar Paul Mackerras

PPC32: Make sure interrupts are disabled in IPI handlers.

parent d1dfaf00
......@@ -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);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment