[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <90bc229b-133d-f695-4459-3fad557a8fe2@gmail.com>
Date: Thu, 24 Aug 2023 22:41:53 +0800
From: Tianyu Lan <ltykernel@...il.com>
To: Dexuan Cui <decui@...rosoft.com>, ak@...ux.intel.com,
arnd@...db.de, bp@...en8.de, brijesh.singh@....com,
dan.j.williams@...el.com, dave.hansen@...el.com,
dave.hansen@...ux.intel.com, haiyangz@...rosoft.com, hpa@...or.com,
jane.chu@...cle.com, kirill.shutemov@...ux.intel.com,
kys@...rosoft.com, linux-hyperv@...r.kernel.org, luto@...nel.org,
mingo@...hat.com, peterz@...radead.org, rostedt@...dmis.org,
sathyanarayanan.kuppuswamy@...ux.intel.com, seanjc@...gle.com,
tglx@...utronix.de, tony.luck@...el.com, wei.liu@...nel.org,
Jason@...c4.com, nik.borisov@...e.com, mikelley@...rosoft.com
Cc: x86@...nel.org, linux-kernel@...r.kernel.org,
linux-arch@...r.kernel.org, Tianyu.Lan@...rosoft.com,
rick.p.edgecombe@...el.com, andavis@...hat.com, mheslin@...hat.com,
vkuznets@...hat.com, xiaoyao.li@...el.com
Subject: Re: [PATCH v3 06/10] x86/hyperv: Introduce a global variable
hyperv_paravisor_present
On 8/24/2023 4:07 PM, Dexuan Cui wrote:
> The new variable hyperv_paravisor_present is set only when the VM
> is a SNP/TDX VM with the paravisor running: see ms_hyperv_init_platform().
>
> We introduce hyperv_paravisor_present because we can not use
> ms_hyperv.paravisor_present in arch/x86/include/asm/mshyperv.h:
>
> struct ms_hyperv_info is defined in include/asm-generic/mshyperv.h, which
> is included at the end of arch/x86/include/asm/mshyperv.h, but at the
> beginning of arch/x86/include/asm/mshyperv.h, we would already need to use
> struct ms_hyperv_info in hv_do_hypercall().
>
> We use hyperv_paravisor_present only in include/asm-generic/mshyperv.h,
> and use ms_hyperv.paravisor_present elsewhere. In the future, we'll
> introduce a hypercall function structure for different VM types, and
> at boot time, the right function pointers would be written into the
> structure so that runtime testing of TDX vs. SNP vs. normal will be
> avoided and hyperv_paravisor_present will no longer be needed.
>
> Call hv_vtom_init() when it's a VBS VM or when ms_hyperv.paravisor_present
> is true, i.e. the VM is a SNP VM or TDX VM with the paravisor.
>
> Enhance hv_vtom_init() for a TDX VM with the paravisor.
>
> In hv_common_cpu_init(), don't decrypt the hyperv_pcpu_input_arg
> for a TDX VM with the paravisor, just like we don't decrypt the page
> for a SNP VM with the paravisor.
>
> Signed-off-by: Dexuan Cui <decui@...rosoft.com>
Reviewed-by: Tianyu Lan <tiala@...rosoft.com>
Powered by blists - more mailing lists