x86/hyperv: Support hypercalls for fully enlightened TDX guests
authorDexuan Cui <decui@microsoft.com>
Thu, 24 Aug 2023 08:07:04 +0000 (01:07 -0700)
committerWei Liu <wei.liu@kernel.org>
Fri, 25 Aug 2023 00:04:56 +0000 (00:04 +0000)
commitd6e0228d265f29348a01780ff306321c399d8b95
tree5c05fed6d87e9444003f911e73389ce926def88c
parent08e9d12077fcc7c4c4579d7dcd8093b59b01369e
x86/hyperv: Support hypercalls for fully enlightened TDX guests

A fully enlightened TDX guest on Hyper-V (i.e. without the paravisor) only
uses the GHCI call rather than hv_hypercall_pg. Do not initialize
hypercall_pg for such a guest.

In hv_common_cpu_init(), the hyperv_pcpu_input_arg page needs to be
decrypted in such a guest.

Reviewed-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Reviewed-by: Tianyu Lan <tiala@microsoft.com>
Signed-off-by: Dexuan Cui <decui@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/20230824080712.30327-3-decui@microsoft.com
arch/x86/hyperv/hv_init.c
arch/x86/hyperv/ivm.c
arch/x86/include/asm/mshyperv.h
drivers/hv/hv_common.c
include/asm-generic/mshyperv.h