Changeset View
Changeset View
Standalone View
Standalone View
sys/x86/x86/mp_x86.c
Show First 20 Lines • Show All 1,059 Lines • ▼ Show 20 Lines | if (bootverbose) | ||||
lapic_dump("AP"); | lapic_dump("AP"); | ||||
if (smp_cpus == mp_ncpus) { | if (smp_cpus == mp_ncpus) { | ||||
/* enable IPI's, tlb shootdown, freezes etc */ | /* enable IPI's, tlb shootdown, freezes etc */ | ||||
atomic_store_rel_int(&smp_started, 1); | atomic_store_rel_int(&smp_started, 1); | ||||
} | } | ||||
#ifdef __amd64__ | #ifdef __amd64__ | ||||
/* | |||||
* Enable global pages TLB extension | |||||
* This also implicitly flushes the TLB | |||||
*/ | |||||
load_cr4(rcr4() | CR4_PGE); | |||||
if (pmap_pcid_enabled) | if (pmap_pcid_enabled) | ||||
load_cr4(rcr4() | CR4_PCIDE); | load_cr4(rcr4() | CR4_PCIDE); | ||||
load_ds(_udatasel); | load_ds(_udatasel); | ||||
load_es(_udatasel); | load_es(_udatasel); | ||||
load_fs(_ufssel); | load_fs(_ufssel); | ||||
#endif | #endif | ||||
mtx_unlock_spin(&ap_boot_mtx); | mtx_unlock_spin(&ap_boot_mtx); | ||||
▲ Show 20 Lines • Show All 603 Lines • Show Last 20 Lines |