lkml.org 
[lkml]   [2012]   [Feb]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] [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
a3967685745 ("[IA64] disable interrupts at end of
ia64_mca_cpe_int_handler()").

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
---
arch/ia64/kernel/mca.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/arch/ia64/kernel/mca.c b/arch/ia64/kernel/mca.c
index 84fb405..8192009 100644
--- a/arch/ia64/kernel/mca.c
+++ b/arch/ia64/kernel/mca.c
@@ -1447,6 +1447,8 @@ out:
/* Get the CMC error record and log it */
ia64_mca_log_sal_error_record(SAL_INFO_TYPE_CMC);

+ local_irq_disable();
+
return IRQ_HANDLED;
}

--
Jiri Kosina
SUSE Labs

\
 
 \ /
  Last update: 2012-02-08 15:35    [W:0.033 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site