diff --git a/kernel-src/arch/x86-64/cpu.c b/kernel-src/arch/x86-64/cpu.c index 106ae73e..529e8f55 100644 --- a/kernel-src/arch/x86-64/cpu.c +++ b/kernel-src/arch/x86-64/cpu.c @@ -204,7 +204,7 @@ void arch_cpu_init() { wrmsr(MSR_STAR, star); wrmsr(MSR_LSTAR, (uint64_t)arch_syscall_entry); wrmsr(MSR_CSTAR, 0); // no compatibility mode syscall handler - wrmsr(MSR_FMASK, 0x200); // disable interrupts on syscall + wrmsr(MSR_FMASK, 0x257fd5); // enable SSE asm volatile( diff --git a/kernel-src/arch/x86-64/syscall.asm b/kernel-src/arch/x86-64/syscall.asm index 1171ba04..a735324e 100644 --- a/kernel-src/arch/x86-64/syscall.asm +++ b/kernel-src/arch/x86-64/syscall.asm @@ -281,7 +281,6 @@ arch_syscall_entry: xor rbp, rbp ; call logging function - cld sti mov rdi, rax extern arch_syscall_log