From 75671f1ca244647528a4a63498ee7c373e2f3ba9 Mon Sep 17 00:00:00 2001 From: Matheus Date: Thu, 4 May 2023 19:36:15 -0300 Subject: [PATCH] interrupt: fix ipl check --- kernel-src/sys/interrupt.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel-src/sys/interrupt.c b/kernel-src/sys/interrupt.c index fe003eb5..c5d73221 100644 --- a/kernel-src/sys/interrupt.c +++ b/kernel-src/sys/interrupt.c @@ -54,7 +54,7 @@ isr_t *interrupt_allocate(void (*func)(isr_t *self, context_t *ctx), void (*eoi) long interrupt_loweripl(long ipl) { bool oldintstatus = interrupt_set(false); long oldipl = _cpu()->ipl; - if (oldipl > ipl) + if (oldipl < ipl) _cpu()->ipl = ipl; interrupt_set(oldintstatus); @@ -66,7 +66,7 @@ long interrupt_loweripl(long ipl) { long interrupt_raiseipl(long ipl) { bool oldintstatus = interrupt_set(false); long oldipl = _cpu()->ipl; - if (oldipl < ipl) + if (oldipl > ipl) _cpu()->ipl = ipl; interrupt_set(oldintstatus); return oldipl;