version 1.33, 2020/04/14 05:43:57 |
version 1.34, 2020/08/09 06:26:49 |
Line 643 pmap_tlb_shootdown_bystanders(pmap_t pm) |
|
Line 643 pmap_tlb_shootdown_bystanders(pmap_t pm) |
|
UVMHIST_FUNC(__func__); |
UVMHIST_FUNC(__func__); |
UVMHIST_CALLARGS(maphist, "pm %#jx", (uintptr_t)pm, 0, 0, 0); |
UVMHIST_CALLARGS(maphist, "pm %#jx", (uintptr_t)pm, 0, 0, 0); |
|
|
kcpuset_t *pm_active; |
const struct cpu_info * const ci = curcpu(); |
kcpuset_clone(&pm_active, pm->pm_active); |
kcpuset_t *pm_active = ci->ci_shootdowncpus; |
|
kcpuset_copy(pm_active, pm->pm_active); |
kcpuset_remove(pm_active, cpu_tlb_info(curcpu())->ti_kcpuset); |
kcpuset_remove(pm_active, cpu_tlb_info(curcpu())->ti_kcpuset); |
const bool kernel_p = (pm == pmap_kernel()); |
const bool kernel_p = (pm == pmap_kernel()); |
bool ipi_sent = false; |
bool ipi_sent = false; |
Line 719 pmap_tlb_shootdown_bystanders(pmap_t pm) |
|
Line 720 pmap_tlb_shootdown_bystanders(pmap_t pm) |
|
TLBINFO_UNLOCK(ti); |
TLBINFO_UNLOCK(ti); |
} |
} |
|
|
kcpuset_destroy(pm_active); |
|
|
|
UVMHIST_LOG(maphist, " <-- done (ipi_sent=%jd)", ipi_sent, 0, 0, 0); |
UVMHIST_LOG(maphist, " <-- done (ipi_sent=%jd)", ipi_sent, 0, 0, 0); |
|
|
return ipi_sent; |
return ipi_sent; |