• Linus Torvalds's avatar
    Merge tag 'x86_tdx_for_6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8999ad99
    Linus Torvalds authored
    Pull x86 TDX updates from Dave Hansen:
     "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.
    
      Summary:
    
       - 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"
    
    [ TLA reminder: TDX is "Trust Domain Extensions", Intel's guest VM
      confidentiality technology ]
    
    * tag 'x86_tdx_for_6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      x86/tdx: Mark TSC reliable
      x86/tdx: Fix __noreturn build warning around __tdx_hypercall_failed()
      x86/virt/tdx: Make TDX_MODULE_CALL handle SEAMCALL #UD and #GP
      x86/virt/tdx: Wire up basic SEAMCALL functions
      x86/tdx: Remove 'struct tdx_hypercall_args'
      x86/tdx: Reimplement __tdx_hypercall() using TDX_MODULE_CALL asm
      x86/tdx: Make TDX_HYPERCALL asm similar to TDX_MODULE_CALL
      x86/tdx: Extend TDX_MODULE_CALL to support more TDCALL/SEAMCALL leafs
      x86/tdx: Pass TDCALL/SEAMCALL input/output registers via a structure
      x86/tdx: Rename __tdx_module_call() to __tdcall()
      x86/tdx: Make macros of TDCALLs consistent with the spec
      x86/tdx: Skip saving output regs when SEAMCALL fails with VMFailInvalid
      x86/tdx: Zero out the missing RSI in TDX_HYPERCALL macro
      x86/tdx: Retry partially-completed page conversion hypercalls
    8999ad99
ivm.c 15.9 KB