Messages in this thread | ![/](/images/icornerl.gif) | | Date | Tue, 6 Jun 2023 13:43:32 -0300 | From | Jason Gunthorpe <> | Subject | Re: [PATCH 0/3] KVM: x86: Use "standard" mmu_notifier hook for APIC page |
| |
On Thu, Jun 01, 2023 at 06:15:15PM -0700, Sean Christopherson wrote: > Convert VMX's handling of mmu_notifier invalidations of the APIC-access page > from invalidate_range() to KVM's standard invalidate_range_{start,end}(). > > KVM (ab)uses invalidate_range() to fudge around not stalling vCPUs until > relevant in-flight invalidations complete. Abusing invalidate_range() works, > but it requires one-off code in KVM, sets a bad precedent in KVM, and is > blocking improvements to mmu_notifier's definition of invalidate_range() > due to KVM's usage diverging wildly from the original intent of notifying > IOMMUs of changes to shared page tables. > > Clean up the mess by hooking x86's implementation of kvm_unmap_gfn_range() > and stalling vCPUs by re-requesting KVM_REQ_APIC_PAGE_RELOAD until the > invalidation completes.
I don't know much about kvm, but this looks like what I had in mind and is a good way to use mmu notifiers
Thanks, Jason
| ![\](/images/icornerr.gif) |