2 * Copyright (c) 2009 The Regents of the University of California
3 * Barret Rhoden <brho@cs.berkeley.edu>
4 * See LICENSE for details.
11 #include <arch/arch.h>
14 #include <ros/error.h>
22 struct per_cpu_info per_cpu_info[MAX_NUM_CPUS];
24 // tracks number of global waits on smp_calls, must be <= NUM_HANDLER_WRAPPERS
25 atomic_t outstanding_calls = 0;
27 /* All non-zero cores call this at the end of their boot process. They halt,
28 * and wake up when interrupted, do any work on their work queue, then halt
29 * when there is nothing to do.
30 * TODO: think about resetting the stack pointer at the beginning.
37 // consider races with work added after we started leaving the last func