[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZuE38n/yhI24vS20@yilunxu-OptiPlex-7050>
Date: Wed, 11 Sep 2024 14:25:54 +0800
From: Xu Yilun <yilun.xu@...ux.intel.com>
To: Rick Edgecombe <rick.p.edgecombe@...el.com>
Cc: seanjc@...gle.com, pbonzini@...hat.com, kvm@...r.kernel.org,
kai.huang@...el.com, dmatlack@...gle.com, isaku.yamahata@...il.com,
yan.y.zhao@...el.com, nik.borisov@...e.com,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 13/21] KVM: TDX: Handle TLB tracking for TDX
> +static void vt_flush_tlb_all(struct kvm_vcpu *vcpu)
> +{
> + /*
> + * TDX calls tdx_track() in tdx_sept_remove_private_spte() to ensure
> + * private EPT will be flushed on the next TD enter.
> + * No need to call tdx_track() here again even when this callback is as
> + * a result of zapping private EPT.
> + * Just invoke invept() directly here to work for both shared EPT and
> + * private EPT.
IIUC, private EPT is already flushed in .remove_private_spte(), so in
theory we don't have to invept() for private EPT?
Thanks,
Yilun
> + */
> + if (is_td_vcpu(vcpu)) {
> + ept_sync_global();
> + return;
> + }
> +
> + vmx_flush_tlb_all(vcpu);
> +}
Powered by blists - more mailing lists