Commit 0f261ede authored by Jiri Kosina's avatar Jiri Kosina Committed by Tony Luck

[IA64] disable interrupts when exiting from ia64_mca_cmc_int_handler()

SAL specification mandates that ia64_mca_log_sal_error_record() gets
called with interrupts enabled, and that's why ia64_mca_cmc_int_handler()
is enabling them. It however forgets to re-disable them when exiting,
which triggers WARN_ON() in generic IRQ handler.

Disable the interrupts again before exiting. This is analogous to
a3967685 ("[IA64] disable interrupts at end of ia64_mca_cpe_int_handler()").
Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
parent 62aa2b53
......@@ -1447,6 +1447,8 @@ ia64_mca_cmc_int_handler(int cmc_irq, void *arg)
/* Get the CMC error record and log it */
ia64_mca_log_sal_error_record(SAL_INFO_TYPE_CMC);
local_irq_disable();
return IRQ_HANDLED;
}
......
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