Re: [PATCH v2 0/6] Enhance event delivery error handling

From: Sean Christopherson
Date: Wed Dec 11 2024 - 13:20:46 EST


On Mon, Nov 11, 2024, Ivan Orlov wrote:
> Currently, the situation when guest accesses MMIO during vectoring is
> handled differently on VMX and SVM: on VMX KVM returns internal error,
> when SVM goes into infinite loop trying to deliver an event again and
> again.
>
> This patch series eliminates this difference by returning a KVM internal
> error when guest performs MMIO during vectoring for both VMX and SVM.
>
> Also, introduce a selftest test case which covers the error handling
> mentioned above.
>
> V1 -> V2:
> - Make commit messages more brief, avoid using pronouns
> - Extract SVM error handling into a separate commit
> - Introduce a new X86EMUL_ return type and detect the unhandleable
> vectoring error in vendor-specific check_emulate_instruction instead of
> handling it in the common MMU code (which is specific for cached MMIO)
>
> Ivan Orlov (6):
> KVM: x86: Add function for vectoring error generation
> KVM: x86: Add emulation status for vectoring during MMIO
> KVM: VMX: Handle vectoring error in check_emulate_instruction
> KVM: SVM: Handle MMIO during vectroing error
> selftests: KVM: extract lidt into helper function
> selftests: KVM: Add test case for MMIO during vectoring

Minor nits throughout, but unless you disagree with my suggestions, I'll fix them
up when applying, i.e. no need to post a v3.