mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Dave Hansen <dave.hansen@linux.intel.com>
To: torvalds@linux-foundation.org
Cc: x86@kernel.org, linux-kernel@vger.kernel.org,
	Dave Hansen <dave.hansen@linux.intel.com>
Subject: [GIT PULL] x86/tdx for 6.7
Date: Tue, 31 Oct 2023 17:07:55 -0700	[thread overview]
Message-ID: <20231101000755.4183137-1-dave.hansen@linux.intel.com> (raw)

Hi Linus,

Please pull some x86/tdx changes for 6.7.

The majority of this is a rework of the assembly and C wrappers that
are used to talk to the TDX module and VMM.  This is a nice cleanup in
general but is also clearing the way for using this code when Linux is
the TDX VMM.

There are also some tidbits to make TDX guests play nicer with Hyper-V
and to take advantage the hardware TSC.

--

The following changes since commit 0bb80ecc33a8fb5a682236443c1e740d5c917d1d:

  Linux 6.6-rc1 (2023-09-10 16:28:41 -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.7

for you to fetch changes up to 9ee4318c157b9802589b746cc340bae3142d984c:

  x86/tdx: Mark TSC reliable (2023-10-06 10:00:04 -0700)

----------------------------------------------------------------
 * Refactor and clean up TDX hypercall/module call infrastructure
 * Handle retrying/resuming page conversion hypercalls
 * Make sure to use the (shockingly) reliable TSC in TDX guests

----------------------------------------------------------------
Dexuan Cui (1):
      x86/tdx: Retry partially-completed page conversion hypercalls

Kai Huang (12):
      x86/tdx: Zero out the missing RSI in TDX_HYPERCALL macro
      x86/tdx: Skip saving output regs when SEAMCALL fails with VMFailInvalid
      x86/tdx: Make macros of TDCALLs consistent with the spec
      x86/tdx: Rename __tdx_module_call() to __tdcall()
      x86/tdx: Pass TDCALL/SEAMCALL input/output registers via a structure
      x86/tdx: Extend TDX_MODULE_CALL to support more TDCALL/SEAMCALL leafs
      x86/tdx: Make TDX_HYPERCALL asm similar to TDX_MODULE_CALL
      x86/tdx: Reimplement __tdx_hypercall() using TDX_MODULE_CALL asm
      x86/tdx: Remove 'struct tdx_hypercall_args'
      x86/virt/tdx: Wire up basic SEAMCALL functions
      x86/virt/tdx: Make TDX_MODULE_CALL handle SEAMCALL #UD and #GP
      x86/tdx: Fix __noreturn build warning around __tdx_hypercall_failed()

Kirill A. Shutemov (1):
      x86/tdx: Mark TSC reliable

 arch/x86/Kconfig                  |  12 ++
 arch/x86/Makefile                 |   2 +
 arch/x86/boot/compressed/tdx.c    |   6 +-
 arch/x86/coco/tdx/tdcall.S        | 234 +++++---------------------------------
 arch/x86/coco/tdx/tdx-shared.c    |  28 ++++-
 arch/x86/coco/tdx/tdx.c           | 138 +++++++++++++++-------
 arch/x86/hyperv/ivm.c             |  10 +-
 arch/x86/include/asm/shared/tdx.h |  89 +++++++++------
 arch/x86/include/asm/tdx.h        |  11 ++
 arch/x86/kernel/asm-offsets.c     |  33 +++---
 arch/x86/virt/Makefile            |   2 +
 arch/x86/virt/vmx/Makefile        |   2 +
 arch/x86/virt/vmx/tdx/Makefile    |   2 +
 arch/x86/virt/vmx/tdx/seamcall.S  |  61 ++++++++++
 arch/x86/virt/vmx/tdx/tdxcall.S   | 226 +++++++++++++++++++++++++++---------
 tools/objtool/noreturns.h         |   1 +
 16 files changed, 491 insertions(+), 366 deletions(-)
 create mode 100644 arch/x86/virt/Makefile
 create mode 100644 arch/x86/virt/vmx/Makefile
 create mode 100644 arch/x86/virt/vmx/tdx/Makefile
 create mode 100644 arch/x86/virt/vmx/tdx/seamcall.S

             reply	other threads:[~2023-11-01  0:08 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-01  0:07 Dave Hansen [this message]
2023-11-01 20:50 ` pr-tracker-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231101000755.4183137-1-dave.hansen@linux.intel.com \
    --to=dave.hansen@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®