Changeset View
Changeset View
Standalone View
Standalone View
sys/x86/include/x86_smp.h
Show All 33 Lines | |||||
extern void *bootstacks[]; | extern void *bootstacks[]; | ||||
extern volatile u_int cpu_ipi_pending[]; | extern volatile u_int cpu_ipi_pending[]; | ||||
extern volatile int aps_ready; | extern volatile int aps_ready; | ||||
extern struct mtx ap_boot_mtx; | extern struct mtx ap_boot_mtx; | ||||
extern int cpu_logical; | extern int cpu_logical; | ||||
extern int cpu_cores; | extern int cpu_cores; | ||||
extern volatile uint32_t smp_tlb_generation; | extern volatile uint32_t smp_tlb_generation; | ||||
extern struct pmap *smp_tlb_pmap; | extern struct pmap *smp_tlb_pmap; | ||||
extern vm_offset_t smp_tlb_addr1, smp_tlb_addr2; | |||||
extern u_int xhits_gbl[]; | extern u_int xhits_gbl[]; | ||||
extern u_int xhits_pg[]; | extern u_int xhits_pg[]; | ||||
extern u_int xhits_rng[]; | extern u_int xhits_rng[]; | ||||
extern u_int ipi_global; | extern u_int ipi_global; | ||||
extern u_int ipi_page; | extern u_int ipi_page; | ||||
extern u_int ipi_range; | extern u_int ipi_range; | ||||
extern u_int ipi_range_size; | extern u_int ipi_range_size; | ||||
▲ Show 20 Lines • Show All 42 Lines • ▼ Show 20 Lines | |||||
void ipi_all_but_self(u_int ipi); | void ipi_all_but_self(u_int ipi); | ||||
void ipi_bitmap_handler(struct trapframe frame); | void ipi_bitmap_handler(struct trapframe frame); | ||||
void ipi_cpu(int cpu, u_int ipi); | void ipi_cpu(int cpu, u_int ipi); | ||||
int ipi_nmi_handler(void); | int ipi_nmi_handler(void); | ||||
void ipi_selected(cpuset_t cpus, u_int ipi); | void ipi_selected(cpuset_t cpus, u_int ipi); | ||||
u_int mp_bootaddress(u_int); | u_int mp_bootaddress(u_int); | ||||
void set_interrupt_apic_ids(void); | void set_interrupt_apic_ids(void); | ||||
void smp_cache_flush(void); | void smp_cache_flush(void); | ||||
void smp_masked_invlpg(cpuset_t mask, vm_offset_t addr); | void smp_masked_invlpg(cpuset_t mask, vm_offset_t addr, struct pmap *pmap); | ||||
void smp_masked_invlpg_range(cpuset_t mask, vm_offset_t startva, | void smp_masked_invlpg_range(cpuset_t mask, vm_offset_t startva, | ||||
vm_offset_t endva); | vm_offset_t endva, struct pmap *pmap); | ||||
void smp_masked_invltlb(cpuset_t mask, struct pmap *pmap); | void smp_masked_invltlb(cpuset_t mask, struct pmap *pmap); | ||||
void mem_range_AP_init(void); | void mem_range_AP_init(void); | ||||
void topo_probe(void); | void topo_probe(void); | ||||
void ipi_send_cpu(int cpu, u_int ipi); | void ipi_send_cpu(int cpu, u_int ipi); | ||||
#endif | #endif |