projects
/
GitHub
/
LineageOS
/
android_kernel_motorola_exynos9610.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
76c36d0
)
sparc64: Use nmi_enter() and nmi_exit(), as needed.
author
David S. Miller
<davem@davemloft.net>
Thu, 10 Sep 2009 12:56:16 +0000
(
05:56
-0700)
committer
David S. Miller
<davem@davemloft.net>
Thu, 10 Sep 2009 12:56:16 +0000
(
05:56
-0700)
Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc/kernel/nmi.c
patch
|
blob
|
blame
|
history
diff --git
a/arch/sparc/kernel/nmi.c
b/arch/sparc/kernel/nmi.c
index 47a465fe3c388e3ab2bafc3f9b1d18a0373c1a82..7de19dd30f4086445a2dd9542ae783f42af4ef6e 100644
(file)
--- a/
arch/sparc/kernel/nmi.c
+++ b/
arch/sparc/kernel/nmi.c
@@
-84,6
+84,7
@@
static void die_nmi(const char *str, struct pt_regs *regs, int do_panic)
if (do_panic || panic_on_oops)
panic("Non maskable interrupt");
+ nmi_exit();
local_irq_enable();
do_exit(SIGBUS);
}
@@
-98,6
+99,8
@@
notrace __kprobes void perfctr_irq(int irq, struct pt_regs *regs)
local_cpu_data().__nmi_count++;
+ nmi_enter();
+
if (notify_die(DIE_NMI, "nmi", regs, 0,
pt_regs_trap_type(regs), SIGINT) == NOTIFY_STOP)
touched = 1;
@@
-120,6
+123,8
@@
notrace __kprobes void perfctr_irq(int irq, struct pt_regs *regs)
write_pic(picl_value(nmi_hz));
pcr_ops->write(pcr_enable);
}
+
+ nmi_exit();
}
static inline unsigned int get_nmi_count(int cpu)