From 7009aab6b04807e085c7e218965e1e8000a2bbbe Mon Sep 17 00:00:00 2001 From: John Hodge Date: Sun, 15 Jan 2012 15:07:38 +0800 Subject: [PATCH] Kernel/x86 - Fixed SMP bug, #if'd out some dead code - SMP (- instead of +) in restoring EAX > You idiot TPG. --- Kernel/arch/x86/desctab.asm | 4 +++- Kernel/arch/x86/proc.c | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Kernel/arch/x86/desctab.asm b/Kernel/arch/x86/desctab.asm index 8c7d320e..6eaa651a 100644 --- a/Kernel/arch/x86/desctab.asm +++ b/Kernel/arch/x86/desctab.asm @@ -188,7 +188,7 @@ Isr0xEE: push eax ; Line up with interrupt number mov eax, dr1 ; CPU Number push eax - mov eax, [esp-4] ; Load EAX back + mov eax, [esp+4] ; Load EAX back jmp SchedulerBase ; Spurious Interrupt [global Isr0xEF] @@ -323,3 +323,5 @@ IRQCommon: popa add esp, 8 ; Error Code and ID iret + +; vim: ft=nasm ts=8 diff --git a/Kernel/arch/x86/proc.c b/Kernel/arch/x86/proc.c index 7d54d0c2..30f318f3 100644 --- a/Kernel/arch/x86/proc.c +++ b/Kernel/arch/x86/proc.c @@ -973,6 +973,7 @@ void Proc_Reschedule(void) */ void Proc_Scheduler(int CPU) { +#if 0 tThread *thread; // If the spinlock is set, let it complete @@ -1005,7 +1006,6 @@ void Proc_Scheduler(int CPU) regs->eflags &= ~0x100; // Clear TF } -#if 0 // TODO: Ack timer? #if USE_MP if( GetCPUNum() ) -- 2.20.1