/SPARTAN/trunk/src/proc/scheduler.c |
---|
41,6 → 41,7 |
#include <typedefs.h> |
#include <mm/page.h> |
#include <synch/spinlock.h> |
#include <arch/faddr.h> |
#ifdef __SMP__ |
#include <arch/smp/atomic.h> |
232,7 → 233,7 |
*/ |
context_save(&CPU->saved_context); |
CPU->saved_context.sp = (__address) &CPU->stack[CPU_STACK_SIZE-8]; |
CPU->saved_context.pc = (__address) scheduler_separated_stack; |
CPU->saved_context.pc = FADDR(scheduler_separated_stack); |
context_restore(&CPU->saved_context); |
/* not reached */ |
} |
/SPARTAN/trunk/src/proc/thread.c |
---|
48,6 → 48,7 |
#include <config.h> |
#include <arch/interrupt.h> |
#include <smp/ipi.h> |
#include <arch/faddr.h> |
char *thread_states[] = {"Invalid", "Running", "Sleeping", "Ready", "Entering", "Exiting"}; |
164,7 → 165,7 |
context_save(&t->saved_context); |
t->saved_context.pc = (__address) cushion; |
t->saved_context.pc = FADDR(cushion); |
t->saved_context.sp = (__address) &t->kstack[THREAD_STACK_SIZE-8]; |
pri = cpu_priority_high(); |