print: add mutex for smp

This commit is contained in:
Matheus
2024-09-16 21:37:29 -03:00
parent f47236f7eb
commit 0fd089e79b
+12 -1
View File
@@ -1,14 +1,25 @@
#include <kernel/syscalls.h>
#include <printf.h>
#include <arch/e9.h>
#include <mutex.h>
syscallret_t syscall_print(context_t *context, char *message) {
syscallret_t ret = {
.ret = 0,
.errno = 0
};
//printf("%s\n", message);
static mutex_t mutex;
static bool initialized = false;
if (initialized == false) {
MUTEX_INIT(&mutex);
initialized = true;
}
MUTEX_ACQUIRE(&mutex, false);
arch_e9_puts(message);
arch_e9_putc('\n');
MUTEX_RELEASE(&mutex);
return ret;
}