Changeset View
Changeset View
Standalone View
Standalone View
sys/amd64/amd64/apic_vector.S
Show First 20 Lines • Show All 165 Lines • ▼ Show 20 Lines | |||||
#ifdef SMP | #ifdef SMP | ||||
/* | /* | ||||
* Global address space TLB shootdown. | * Global address space TLB shootdown. | ||||
*/ | */ | ||||
.text | .text | ||||
SUPERALIGN_TEXT | SUPERALIGN_TEXT | ||||
invltlb_ret: | |||||
call as_lapic_eoi | |||||
jmp ld_regs | |||||
SUPERALIGN_TEXT | |||||
INTR_HANDLER invltlb | |||||
call invltlb_handler | |||||
jmp invltlb_ret | |||||
INTR_HANDLER invltlb_pcid | |||||
call invltlb_pcid_handler | |||||
jmp invltlb_ret | |||||
INTR_HANDLER invltlb_invpcid_nopti | |||||
call invltlb_invpcid_handler | |||||
jmp invltlb_ret | |||||
INTR_HANDLER invltlb_invpcid_pti | |||||
call invltlb_invpcid_pti_handler | |||||
jmp invltlb_ret | |||||
/* | /* | ||||
* Single page TLB shootdown | * IPI shootdown handler | ||||
alc: "IPI handler for cache and TLB shootdowns" | |||||
*/ | */ | ||||
INTR_HANDLER invlpg | INTR_HANDLER invlop | ||||
call invlpg_handler | call invlop_handler | ||||
jmp invltlb_ret | call as_lapic_eoi | ||||
jmp ld_regs | |||||
INTR_HANDLER invlpg_invpcid | |||||
call invlpg_invpcid_handler | |||||
jmp invltlb_ret | |||||
INTR_HANDLER invlpg_pcid | |||||
call invlpg_pcid_handler | |||||
jmp invltlb_ret | |||||
/* | |||||
* Page range TLB shootdown. | |||||
*/ | |||||
INTR_HANDLER invlrng | |||||
call invlrng_handler | |||||
jmp invltlb_ret | |||||
INTR_HANDLER invlrng_invpcid | |||||
call invlrng_invpcid_handler | |||||
jmp invltlb_ret | |||||
INTR_HANDLER invlrng_pcid | |||||
call invlrng_pcid_handler | |||||
jmp invltlb_ret | |||||
/* | |||||
* Invalidate cache. | |||||
*/ | |||||
INTR_HANDLER invlcache | |||||
call invlcache_handler | |||||
jmp invltlb_ret | |||||
/* | /* | ||||
* Handler for IPIs sent via the per-cpu IPI bitmap. | * Handler for IPIs sent via the per-cpu IPI bitmap. | ||||
*/ | */ | ||||
INTR_HANDLER ipi_intr_bitmap_handler | INTR_HANDLER ipi_intr_bitmap_handler | ||||
call as_lapic_eoi | call as_lapic_eoi | ||||
FAKE_MCOUNT(TF_RIP(%rsp)) | FAKE_MCOUNT(TF_RIP(%rsp)) | ||||
call ipi_bitmap_handler | call ipi_bitmap_handler | ||||
▲ Show 20 Lines • Show All 69 Lines • Show Last 20 Lines |
"IPI handler for cache and TLB shootdowns"