summaryrefslogtreecommitdiff
path: root/kernel/ipc.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/ipc.c')
-rw-r--r--kernel/ipc.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/ipc.c b/kernel/ipc.c
index d051ea1..56ca79a 100644
--- a/kernel/ipc.c
+++ b/kernel/ipc.c
@@ -1,4 +1,5 @@
#include <assert.h>
+#include <interrupts.h>
#include <ipc.h>
#include <math.h>
#include <sched/scheduler.h>
@@ -57,13 +58,13 @@ int ipc_read(u8 *buffer, u32 length, u32 *sender_pid) {
return 0;
}
get_current_task()->is_halted = 1;
- asm("sti");
+ enable_interrupts();
continue;
}
break;
}
get_current_task()->is_halted = 0;
- asm("cli");
+ disable_interrupts();
ipc_message->is_used = 0;
// TODO: Verify sender_pid is a valid address
if (sender_pid) {