summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlmuHS <almuhs@github.com>2019-10-05 00:55:35 +0200
committerAlmuHS <almuhs@github.com>2019-10-05 00:55:35 +0200
commita974cddce30241001bad2596ebd6edd7dd86ee6f (patch)
tree19747b8577c1003b5dedf669bd54e33c74faabc9
parentd9038d6af2bebe98f41936ec812dc87a36077e38 (diff)
Revert "refactor: moved BSP's apic_id initialization to c_boot_entry"
This reverts commit b076434a3c6303d817dc839d2097bc6f308b6dea.
-rw-r--r--i386/i386/mp_desc.c4
-rw-r--r--i386/i386at/model_dep.c10
2 files changed, 3 insertions, 11 deletions
diff --git a/i386/i386/mp_desc.c b/i386/i386/mp_desc.c
index 10caeb19..aad81014 100644
--- a/i386/i386/mp_desc.c
+++ b/i386/i386/mp_desc.c
@@ -566,6 +566,9 @@ start_other_cpus(void)
/*TODO: Copy the routine in a physical page */
memcpy((void*)phystokv(AP_BOOT_ADDR), (void*) &apboot, (uint32_t)&apbootend - (uint32_t)&apboot);
+ //update BSP machine_slot and apic2kernel
+ machine_slot[0].apic_id = apic_id;
+ apic2kernel[apic_id] = 0;
//Reserve memory for cpu stack
if (!init_alloc_aligned(STACK_SIZE*(ncpu-1), &stack_start))
@@ -592,7 +595,6 @@ start_other_cpus(void)
}
}
-
/* Get rid of the temporary direct mapping and flush it out of the TLB. */
for (i = 0 ; i < nb_direct_value; i++){
kernel_page_dir[lin2pdenum_cont(INIT_VM_MIN_KERNEL_ADDRESS) + i] = 0;
diff --git a/i386/i386at/model_dep.c b/i386/i386at/model_dep.c
index 1cadbb2d..047567e7 100644
--- a/i386/i386at/model_dep.c
+++ b/i386/i386at/model_dep.c
@@ -580,7 +580,6 @@ if(ncpu == 1){
*/
void c_boot_entry(vm_offset_t bi)
{
- int apic_id;
#if ENABLE_IMMEDIATE_CONSOLE
romputc = immc_romputc;
#endif /* ENABLE_IMMEDIATE_CONSOLE */
@@ -687,15 +686,6 @@ void c_boot_entry(vm_offset_t bi)
break;
}
- if(lapic != 0){
- apic_id = lapic->apic_id.r;
-
- //update BSP machine_slot and apic2kernel
- machine_slot[0].apic_id = apic_id;
- apic2kernel[apic_id] = 0;
- }
-
-
/*
* Start the system.
*/