[GIT PULL] x86/tdx for 6.5

From: Dave Hansen
Date: Mon Jun 26 2023 - 15:30:59 EST


Hi Linus,

Please pull some x86/tdx changes for 6.5. This includes a very minor
cleanup and a fix for a race. The race has never been observed in
practice but might allow load_unaligned_zeropad() to catch a TDX page
in the middle of its conversion process which would lead to a fatal
and unrecoverable guest shutdown.

--

The following changes since commit 44c026a73be8038f03dbdeef028b642880cf1511:

Linux 6.4-rc3 (2023-05-21 14:05:48 -0700)

are available in the Git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git tags/x86_tdx_for_6.5

for you to fetch changes up to 94142c9d1bdf1c18027a42758ceb6bdd59a92012:

x86/mm: Fix enc_status_change_finish_noop() (2023-06-06 16:24:27 -0700)

----------------------------------------------------------------
- Fix a race window where load_unaligned_zeropad() could cause
a fatal shutdown during TDX private<=>shared conversion
- Annotate sites where VM "exit reasons" are reused as hypercall
numbers.

----------------------------------------------------------------
Kirill A. Shutemov (3):
x86/mm: Allow guest.enc_status_change_prepare() to fail
x86/tdx: Fix race between set_memory_encrypted() and load_unaligned_zeropad()
x86/mm: Fix enc_status_change_finish_noop()

Nikolay Borisov (1):
x86/tdx: Wrap exit reason with hcall_func()

arch/x86/boot/compressed/tdx.c | 4 +--
arch/x86/coco/tdx/tdx.c | 62 ++++++++++++++++++++++++++++++---------
arch/x86/include/asm/shared/tdx.h | 11 +++++++
arch/x86/include/asm/x86_init.h | 2 +-
arch/x86/kernel/x86_init.c | 4 +--
arch/x86/mm/mem_encrypt_amd.c | 4 ++-
arch/x86/mm/pat/set_memory.c | 3 +-
7 files changed, 69 insertions(+), 21 deletions(-)