From 015d8b409303110eb78af6c9b3818973b779d218 Mon Sep 17 00:00:00 2001 From: Matheus Date: Mon, 24 Apr 2023 22:31:02 -0300 Subject: [PATCH] interrupt: default interrupts being off in isr --- kernel-src/sys/interrupt.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/kernel-src/sys/interrupt.c b/kernel-src/sys/interrupt.c index cefbf8f3..581f2400 100644 --- a/kernel-src/sys/interrupt.c +++ b/kernel-src/sys/interrupt.c @@ -11,14 +11,10 @@ void interrupt_isr(int vec, context_t *ctx) { if (_cpu()->ipl > isr->priority) { long oldipl = interrupt_setipl(isr->priority); - - bool oldint = interrupt_set(true); + bool oldint = _cpu()->intstatus; isr->func(isr, ctx); - interrupt_set(false); - - interrupt_setipl(oldipl); - // restore status on cpu_t struct directly _cpu()->intstatus = oldint; + interrupt_setipl(oldipl); } else { isr->pending = true; }