Re: [PATCH 2/3] KVM: x86: Add support for VMware guest specific hypercalls

From: Paolo Bonzini
Date: Mon Feb 03 2025 - 14:46:52 EST


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.

Paolo

"failures" that are squashed and never propagated to userspace (PV
features tend to do this), page splits, etc.