aboutsummaryrefslogtreecommitdiff
path: root/src/kernel/interrupts/isr.c
diff options
context:
space:
mode:
authorMarvin Borner2020-05-09 23:50:24 +0200
committerMarvin Borner2020-05-09 23:50:24 +0200
commitc5b0305b3a6e7e6ec6742b99ceb6a1a0b3c6e286 (patch)
tree173965f614435bb9740d05bbc365aba7b76d7e45 /src/kernel/interrupts/isr.c
parente350804dc78ab01aaca6aba33792a652535028d9 (diff)
Interrupt analysis - removed many useless cli/sti
Diffstat (limited to 'src/kernel/interrupts/isr.c')
-rw-r--r--src/kernel/interrupts/isr.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/kernel/interrupts/isr.c b/src/kernel/interrupts/isr.c
index 9222406..3bfc2b8 100644
--- a/src/kernel/interrupts/isr.c
+++ b/src/kernel/interrupts/isr.c
@@ -103,14 +103,12 @@ const char *exception_messages[32] = { "Division By Zero",
"Reserved",
"Reserved" };
-// Master exception/interrupt/fault handler - halt via panic
+// Master exception/interrupt/fault handler - called by asm
void fault_handler(struct regs *r)
{
- cli();
irq_handler_t handler = isr_routines[r->int_no];
if (handler) {
handler(r);
- sti();
} else {
u32 faulting_address;
asm("mov %%cr2, %0" : "=r"(faulting_address));