2023-06-20 16:25:30

by Dexuan Cui

[permalink] [raw]
Subject: [PATCH v8 0/2] Support TDX guests on Hyper-V (the x86/tdx part)

v8 is a rebased version of v7:
v8 is based on tip.git's master branch, which has commit
75d090fd167a ("x86/tdx: Add unaccepted memory support"), so I have
to rebase v7 to the commit and post v8.

v7 is based on tip.git's x86/tdx branch.

The two patches (which are based on the latest master branch of the tip
tree) are the x86/tdx part of the v6 patchset:
https://lwn.net/ml/linux-kernel/[email protected]/

The other patches of the v6 patchset needs more changes in preparation for
the upcoming paravisor support, so let me post the x86/tdx part first.

This v8 patchset addressed Dave's comments on patch 1:
see https://lwn.net/ml/linux-kernel/SA1PR21MB1335736123C2BCBBFD7460C3BF46A@SA1PR21MB1335.namprd21.prod.outlook.com/

Patch 2 is just a repost. There was a race between set_memory_encrypted()
and load_unaligned_zeropad(), which has been fixed by the 3 patches of
Kirill in the tip tree:
3f6819dd192e ("x86/mm: Allow guest.enc_status_change_prepare() to fail")
195edce08b63 ("x86/tdx: Fix race between set_memory_encrypted() and load_unaligned_zeropad()")
94142c9d1bdf ("x86/mm: Fix enc_status_change_finish_noop()")
(see https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/log/?h=x86/tdx)

If you want to view the patchset on github, it is here:
https://github.com/dcui/tdx/commits/decui/upstream-tip/master/tdx/v8-x86-tdx-only

Dexuan Cui (2):
x86/tdx: Retry TDVMCALL_MAP_GPA() when needed
x86/tdx: Support vmalloc() for tdx_enc_status_changed()

arch/x86/coco/tdx/tdx.c | 86 ++++++++++++++++++++++++++-----
arch/x86/include/asm/shared/tdx.h | 2 +
2 files changed, 76 insertions(+), 12 deletions(-)

--
2.25.1