Re: [PATCH v2 0/4] KVM: x86/mmu: Clean up indirect_shadow_pages usage

From: Sean Christopherson
Date: Thu Feb 22 2024 - 20:39:03 EST


On Fri, 02 Feb 2024 16:23:39 -0800, Sean Christopherson wrote:
> Resurrect a 6 month old patch from Mingwei, add a few cleanps on top, and
> fix a largely theoretical race between emulating writes and write-protecting
> shadow pages. At least, I'm pretty sure there's a race. Memory ordering
> isn't exactly my strong suit.
>
> v2:
> - Drop the unnecessary READ_ONCE(). [Jim]
> - Cleanup more old crud in reexecute_instruction().
> - Fix the aforementioned race.
>
> [...]

Applied 1-3 to kvm-x86 mmu. I will likely apply patch 4 for 6.9 as well, but
assuming it doesn't get attention "soon", I'll apply it dead last in kvm-x86/mmu
so that it's easy to discard if my paranoia is unfounded.

[1/4] KVM: x86/mmu: Don't acquire mmu_lock when using indirect_shadow_pages as a heuristic
https://github.com/kvm-x86/linux/commit/474b99ed703b
[2/4] KVM: x86: Drop dedicated logic for direct MMUs in reexecute_instruction()
https://github.com/kvm-x86/linux/commit/515c18a64e70
[3/4] KVM: x86: Drop superfluous check on direct MMU vs. WRITE_PF_TO_SP flag
https://github.com/kvm-x86/linux/commit/dfeef3d3f310
[4/4] KVM: x86/mmu: Fix a *very* theoretical race in kvm_mmu_track_write()
(not applied, yet)

--
https://github.com/kvm-x86/linux/tree/next