From 2062e7070710989abf7271838efb99cbfbe511d0 Mon Sep 17 00:00:00 2001 From: Brett Weiland Date: Sun, 12 Sep 2021 12:53:33 -0500 Subject: SMP fixed for CPUs with defective cores modified: README.md modified: src/.gdb_history modified: src/bootloader/enter_kernel.asm modified: src/bootloader/gdt.asm modified: src/debug/gdbinit.gdb modified: src/include/int.h modified: src/include/paging.h modified: src/include/smp.h modified: src/include/smp_sync.h modified: src/indigo_os modified: src/kernel/int.c modified: src/kernel/kernel.c modified: src/kernel/klog.c modified: src/kernel/madt.c modified: src/kernel/page.c modified: src/kernel/panic.c modified: src/kernel/printf.c modified: src/kernel/smp.c modified: src/kernel/smp_trampoline.asm modified: .gitignore deleted: src/.gdb_history --- src/kernel/int.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/kernel/int.c') diff --git a/src/kernel/int.c b/src/kernel/int.c index 5901a90..5db0b9a 100644 --- a/src/kernel/int.c +++ b/src/kernel/int.c @@ -199,8 +199,10 @@ void init_exceptions() { for(e = 10; e < 15; e++) idt[e] = KERNEL_IDT_DESC_GATE(fatal_hwexception_errcode); for(e = 18; e < 21; e++) idt[e] = KERNEL_IDT_DESC_GATE(fatal_hwexception); } -//void new_idt +void smp_load_idt() { + asm("lidt [%0]\n"::"m"(idtr)); +} void init_interrupts_bsp() { init_madt(); -- cgit v1.2.3