summaryrefslogtreecommitdiffstats
path: root/kernel/kallsyms_selftest.c
diff options
context:
space:
mode:
authorMichael Kelley <mikelley@microsoft.com>2023-03-27 15:16:07 +0200
committerWei Liu <wei.liu@kernel.org>2023-04-17 21:19:05 +0200
commit493cc07385cf1c6678a6159d410854b8e99aa945 (patch)
treef408a2b26c75c82370e5e38a9883f8ff6ca3b68e /kernel/kallsyms_selftest.c
parentx86/hyperv: Add callback filter to cpumask_to_vpset() (diff)
downloadlinux-493cc07385cf1c6678a6159d410854b8e99aa945.tar.xz
linux-493cc07385cf1c6678a6159d410854b8e99aa945.zip
x86/hyperv: Exclude lazy TLB mode CPUs from enlightened TLB flushes
In the case where page tables are not freed, native_flush_tlb_multi() does not do a remote TLB flush on CPUs in lazy TLB mode because the CPU will flush itself at the next context switch. By comparison, the Hyper-V enlightened TLB flush does not exclude CPUs in lazy TLB mode and so performs unnecessary flushes. If we're not freeing page tables, add logic to test for lazy TLB mode when adding CPUs to the input argument to the Hyper-V TLB flush hypercall. Exclude lazy TLB mode CPUs so the behavior matches native_flush_tlb_multi() and the unnecessary flushes are avoided. Handle both the <=64 vCPU case and the _ex case for >64 vCPUs. Signed-off-by: Michael Kelley <mikelley@microsoft.com> Link: https://lore.kernel.org/r/1679922967-26582-3-git-send-email-mikelley@microsoft.com Signed-off-by: Wei Liu <wei.liu@kernel.org>
Diffstat (limited to 'kernel/kallsyms_selftest.c')
0 files changed, 0 insertions, 0 deletions