From 53069ae43ea997d51d2b985a26fffdb86a59b023 Mon Sep 17 00:00:00 2001 From: Aleksa Vuckovic Date: Wed, 22 Feb 2023 18:36:16 +0100 Subject: spinlocks in printf --- kernel/src/scheduler/ap_startup.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'kernel/src/scheduler/ap_startup.c') diff --git a/kernel/src/scheduler/ap_startup.c b/kernel/src/scheduler/ap_startup.c index 0d37a6c..4e70f17 100644 --- a/kernel/src/scheduler/ap_startup.c +++ b/kernel/src/scheduler/ap_startup.c @@ -10,9 +10,13 @@ void ap_startup(void) { load_gdt(&gdt_pointer); load_pt_lvl4(page_table_lvl4); - lock(cnt_lock); + while (bspdone) { + __asm__ __volatile__ ("pause;"); + } + printf("curr_cpu_apic_id: 0x%x\n", curr_cpu_apic_id()); - cnt++; + lock(cnt_lock); + ap_cnt++; unlock(cnt_lock); for(;;) { -- cgit v1.2.3