From: Nikolay Borisov <nik.borisov@suse.com>
To: Xiaoyao Li <xiaoyao.li@intel.com>,
Sean Christopherson <seanjc@google.com>,
Paolo Bonzini <pbonzini@redhat.com>
Cc: Kiryl Shutsemau <kas@kernel.org>,
Rick Edgecombe <rick.p.edgecombe@intel.com>,
kvm@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-coco@lists.linux.dev
Subject: Re: [PATCH v4 9/9] KVM: VMX: Consolidate the exit handler for VMX and TDX
Date: Wed, 26 Aug 2026 13:03:01 +0300 [thread overview]
Message-ID: <5426d2f6-3e67-45d3-85d6-d0da67edb486@suse.com> (raw)
In-Reply-To: <20260819094903.3060020-10-xiaoyao.li@intel.com>
On 8/19/26 12:49, Xiaoyao Li wrote:
> The exit handlers for VMX and TDX have the similar pattern. Consolidate
> them into a single vt_handle_exit() helper.
>
> Signed-off-by: Xiaoyao Li <xiaoyao.li@intel.com>
> Changes in v4:
> - new patch.
> ---
> arch/x86/kvm/vmx/main.c | 38 ++++++++++++++++++++++++++++----------
> arch/x86/kvm/vmx/tdx.c | 18 +-----------------
> arch/x86/kvm/vmx/vmx.c | 21 +--------------------
> 3 files changed, 30 insertions(+), 47 deletions(-)
>
> diff --git a/arch/x86/kvm/vmx/main.c b/arch/x86/kvm/vmx/main.c
> index 6a813c49ca8a..10df9667d0c0 100644
> --- a/arch/x86/kvm/vmx/main.c
> +++ b/arch/x86/kvm/vmx/main.c
> @@ -154,15 +154,6 @@ static fastpath_t vt_vcpu_run(struct kvm_vcpu *vcpu, u64 run_flags)
> return vmx_vcpu_run(vcpu, run_flags);
> }
>
> -static int vt_handle_exit(struct kvm_vcpu *vcpu,
> - enum exit_fastpath_completion fastpath)
> -{
> - if (is_td_vcpu(vcpu))
> - return tdx_handle_exit(vcpu, fastpath);
> -
> - return vmx_handle_exit(vcpu, fastpath);
> -}
> -
> static bool vt_unhandleable_emulation_required(struct kvm_vcpu *vcpu)
> {
> if (is_td_vcpu(vcpu)) {
> @@ -887,6 +878,33 @@ int vt_handle_bus_lock_vmexit(struct kvm_vcpu *vcpu)
> return 1;
> }
>
> +static int vt_handle_exit(struct kvm_vcpu *vcpu,
> + enum exit_fastpath_completion fastpath)
> +{
> + int ret;
> +
> +#ifdef CONFIG_KVM_INTEL_TDX
> + if (is_td_vcpu(vcpu))
> + ret = tdx_handle_exit(vcpu, fastpath);
> + else
> +#endif
> + ret = vmx_handle_exit(vcpu, fastpath);
> +
> + /*
> + * Exit to user space when bus lock detected to inform that there is
> + * a bus lock in guest.
> + */
> + if (vmx_get_exit_reason(vcpu).bus_lock_detected) {
> + if (ret > 0) {
> + vcpu->run->exit_reason = KVM_EXIT_X86_BUS_LOCK;
> + ret = 0;
> + }
> +
> + vcpu->run->flags |= KVM_RUN_X86_BUS_LOCK;
> + }
> + return ret;
> +}
> +
> #define VMX_REQUIRED_APICV_INHIBITS \
> (BIT(APICV_INHIBIT_REASON_DISABLED) | \
> BIT(APICV_INHIBIT_REASON_ABSENT) | \
> @@ -960,7 +978,7 @@ struct kvm_x86_ops vt_x86_ops __initdata = {
>
> .vcpu_needs_initialization = vt_op_tdx_only(vcpu_needs_initialization),
> .vcpu_run = vt_op(vcpu_run),
> - .handle_exit = vt_op(handle_exit),
> + .handle_exit = vt_handle_exit,
nit: Why isn't this vt_op() for the sake of consistency and introduce
needless churn ?
<snip>
next prev parent reply other threads:[~2026-08-26 10:03 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-19 9:48 [PATCH v4 0/9] KVM: TDX: Enable VM-DoS Prevention Features for TDX Xiaoyao Li
2026-08-19 9:48 ` [PATCH v4 1/9] KVM: TDX: Enable Notify VM exit Xiaoyao Li
2026-08-20 8:48 ` Binbin Wu
2026-08-19 9:48 ` [PATCH v4 2/9] KVM: TDX: Check if there is valid exit infos based on vp_enter_ret Xiaoyao Li
2026-08-19 16:39 ` Edgecombe, Rick P
2026-08-20 1:53 ` Xiaoyao Li
2026-08-20 9:11 ` Binbin Wu
2026-08-19 9:48 ` [PATCH v4 3/9] KVM: TDX: Set bits 31:16 to 0 for the synthesized Exit Reason Xiaoyao Li
2026-08-20 9:16 ` Binbin Wu
2026-08-19 9:48 ` [PATCH v4 4/9] KVM: TDX: Don't assume exit_reason[31:16] is all-0 in tdx_to_vmx_exit_reason() Xiaoyao Li
2026-08-19 10:16 ` sashiko-bot
2026-08-19 9:48 ` [PATCH v4 5/9] KVM: TDX: Update exit_reason on wait_for_sept_zap return Xiaoyao Li
2026-08-19 19:08 ` Edgecombe, Rick P
2026-08-19 9:49 ` [PATCH v4 6/9] KVM: VMX: Preserve negative return value in vmx_handle_exit() with bus lock detected Xiaoyao Li
2026-08-19 9:49 ` [PATCH v4 7/9] KVM: VMX: Make handle_bus_lock_vmexit() a shared helper Xiaoyao Li
2026-08-26 10:38 ` Nikolay Borisov
2026-08-19 9:49 ` [PATCH v4 8/9] KVM: TDX: Enable Bus Lock VM exit Xiaoyao Li
2026-08-26 10:38 ` Nikolay Borisov
2026-08-19 9:49 ` [PATCH v4 9/9] KVM: VMX: Consolidate the exit handler for VMX and TDX Xiaoyao Li
2026-08-26 9:51 ` Nikolay Borisov
2026-08-26 10:03 ` Nikolay Borisov [this message]
2026-08-26 10:43 ` Xiaoyao Li
2026-08-26 11:03 ` Nikolay Borisov
2026-08-26 13:59 ` Sean Christopherson
2026-08-19 22:57 ` [PATCH v4 0/9] KVM: TDX: Enable VM-DoS Prevention Features for TDX Edgecombe, Rick P
2026-08-19 23:03 ` Sean Christopherson
2026-08-19 23:08 ` Edgecombe, Rick P
2026-08-21 13:14 ` Sean Christopherson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5426d2f6-3e67-45d3-85d6-d0da67edb486@suse.com \
--to=nik.borisov@suse.com \
--cc=kas@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linux-coco@lists.linux.dev \
--cc=linux-kernel@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=rick.p.edgecombe@intel.com \
--cc=seanjc@google.com \
--cc=xiaoyao.li@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.