summaryrefslogtreecommitdiff
path: root/kernel/src/scheduler/ap_startup.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/src/scheduler/ap_startup.c')
-rw-r--r--kernel/src/scheduler/ap_startup.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/kernel/src/scheduler/ap_startup.c b/kernel/src/scheduler/ap_startup.c
index 43b1a51..3bb4ab2 100644
--- a/kernel/src/scheduler/ap_startup.c
+++ b/kernel/src/scheduler/ap_startup.c
@@ -1,5 +1,11 @@
-// this C code can be anywhere you want it, no relocation needed
-void ap_startup(int apicid) {
- // do what you want to do on the AP
- while(1);
+#include <atomic.h>
+
+void ap_startup(void) {
+ lock(cnt_lock);
+ cnt++;
+ unlock(cnt_lock);
+
+ for(;;) {
+ __asm__ volatile ("hlt;");
+ }
}