On Mon, Feb 03, 2025, Paolo Bonzini wrote: > On 2/3/25 20:41, Sean Christopherson wrote: > > -EFAULT isn't the problem, KVM not being able to return useful information in > > all situations is the issue. > > Yes, that's why I don't want it to be an automatically opted-in API. If > incremental improvements are possible, it may be useful to allow interested > userspace to enable it early. For example... > > > Specifically, "guest" accesses that are emulated > > by KVM are problematic, because the -EFAULT from e.g. __kvm_write_guest_page() > > is disconnected from the code that actually kicks out to userspace. In that > > case, userspace will get KVM_EXIT_MMIO, not -EFAULT. There are more problems > > beyond KVM_EXIT_MMIO vs. -EFAULT, e.g. instructions that perform multiple memory > > accesses, > > those are obviously synchronous and I expect VMware to handle them already. > > That said my preferred solution to just use userfaultfd, which is > synchronous by definition. Oh, right, userfaultfd would be far better than piggybacking write-tracking.