linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
  • * Re: [PATCH v11 04/20] x86/cpu: Detect TDX partial write machine check erratum
           [not found] ` <86f2a8814240f4bbe850f6a09fc9d0b934979d1b.1685887183.git.kai.huang@intel.com>
           [not found]   ` <20230606123821.exit7gyxs42dxotz@box.shutemov.name>
    @ 2023-06-07 14:15   ` Dave Hansen
      2023-06-07 22:43     ` Huang, Kai
      2023-06-19 12:21   ` David Hildenbrand
      2 siblings, 1 reply; 144+ messages in thread
    From: Dave Hansen @ 2023-06-07 14:15 UTC (permalink / raw)
      To: Kai Huang, linux-kernel, kvm
      Cc: linux-mm, kirill.shutemov, tony.luck, peterz, tglx, seanjc,
    	pbonzini, david, dan.j.williams, rafael.j.wysocki, ying.huang,
    	reinette.chatre, len.brown, ak, isaku.yamahata, chao.gao,
    	sathyanarayanan.kuppuswamy, bagasdotme, sagis, imammedo
    
    On 6/4/23 07:27, Kai Huang wrote:
    > TDX memory has integrity and confidentiality protections.  Violations of
    > this integrity protection are supposed to only affect TDX operations and
    > are never supposed to affect the host kernel itself.  In other words,
    > the host kernel should never, itself, see machine checks induced by the
    > TDX integrity hardware.
    
    At the risk of patting myself on the back by acking a changelog that I
    wrote 95% of:
    
    Reviewed-by: Dave Hansen <dave.hansen@linux.intel.com>
    
    
    
    ^ permalink raw reply	[flat|nested] 144+ messages in thread
  • * Re: [PATCH v11 04/20] x86/cpu: Detect TDX partial write machine check erratum
           [not found] ` <86f2a8814240f4bbe850f6a09fc9d0b934979d1b.1685887183.git.kai.huang@intel.com>
           [not found]   ` <20230606123821.exit7gyxs42dxotz@box.shutemov.name>
      2023-06-07 14:15   ` Dave Hansen
    @ 2023-06-19 12:21   ` David Hildenbrand
      2023-06-20 10:31     ` Huang, Kai
      2023-06-20 15:39     ` Dave Hansen
      2 siblings, 2 replies; 144+ messages in thread
    From: David Hildenbrand @ 2023-06-19 12:21 UTC (permalink / raw)
      To: Kai Huang, linux-kernel, kvm
      Cc: linux-mm, dave.hansen, kirill.shutemov, tony.luck, peterz, tglx,
    	seanjc, pbonzini, dan.j.williams, rafael.j.wysocki, ying.huang,
    	reinette.chatre, len.brown, ak, isaku.yamahata, chao.gao,
    	sathyanarayanan.kuppuswamy, bagasdotme, sagis, imammedo
    
    On 04.06.23 16:27, Kai Huang wrote:
    > TDX memory has integrity and confidentiality protections.  Violations of
    > this integrity protection are supposed to only affect TDX operations and
    > are never supposed to affect the host kernel itself.  In other words,
    > the host kernel should never, itself, see machine checks induced by the
    > TDX integrity hardware.
    > 
    > Alas, the first few generations of TDX hardware have an erratum.  A
    > "partial" write to a TDX private memory cacheline will silently "poison"
    > the line.  Subsequent reads will consume the poison and generate a
    > machine check.  According to the TDX hardware spec, neither of these
    > things should have happened.
    > 
    > Virtually all kernel memory accesses operations happen in full
    > cachelines.  In practice, writing a "byte" of memory usually reads a 64
    > byte cacheline of memory, modifies it, then writes the whole line back.
    > Those operations do not trigger this problem.
    
    So, ordinary writes to TD private memory are not a problem? I thought 
    one motivation for the unmapped-guest-memory discussion was to prevent 
    host (userspace) writes to such memory because it would trigger a MC and 
    eventually crash the host.
    
    I recall that this would happen easily (not just in some weird "partial" 
    case and that the spec would allow for it)
    
    1) Does that, in general, not happen anymore (was the hardware fixed?)?
    
    2) Will new hardware prevent/"fix" that completely (was the spec updated?)?
    
    
    ... or was my understanding wrong?
    
    Thanks!
    
    > 
    > This problem is triggered by "partial" writes where a write transaction
    > of less than cacheline lands at the memory controller.  The CPU does
    > these via non-temporal write instructions (like MOVNTI), or through
    > UC/WC memory mappings.  The issue can also be triggered away from the
    > CPU by devices doing partial writes via DMA.
    > 
    > With this erratum, there are additional things need to be done around
    > machine check handler and kexec(), etc.  Similar to other CPU bugs, use
    > a CPU bug bit to indicate this erratum, and detect this erratum during
    > early boot.  Note this bug reflects the hardware thus it is detected
    > regardless of whether the kernel is built with TDX support or not.
    > 
    > Signed-off-by: Kai Huang <kai.huang@intel.com>
    > ---
    > 
    > v10 -> v11:
    >   - New patch
    > 
    > ---
    >   arch/x86/include/asm/cpufeatures.h |  1 +
    >   arch/x86/kernel/cpu/intel.c        | 21 +++++++++++++++++++++
    >   2 files changed, 22 insertions(+)
    > 
    > diff --git a/arch/x86/include/asm/cpufeatures.h b/arch/x86/include/asm/cpufeatures.h
    > index cb8ca46213be..dc8701f8d88b 100644
    > --- a/arch/x86/include/asm/cpufeatures.h
    > +++ b/arch/x86/include/asm/cpufeatures.h
    > @@ -483,5 +483,6 @@
    >   #define X86_BUG_RETBLEED		X86_BUG(27) /* CPU is affected by RETBleed */
    >   #define X86_BUG_EIBRS_PBRSB		X86_BUG(28) /* EIBRS is vulnerable to Post Barrier RSB Predictions */
    >   #define X86_BUG_SMT_RSB			X86_BUG(29) /* CPU is vulnerable to Cross-Thread Return Address Predictions */
    > +#define X86_BUG_TDX_PW_MCE		X86_BUG(30) /* CPU may incur #MC if non-TD software does partial write to TDX private memory */
    >   
    >   #endif /* _ASM_X86_CPUFEATURES_H */
    > diff --git a/arch/x86/kernel/cpu/intel.c b/arch/x86/kernel/cpu/intel.c
    > index 1c4639588ff9..251b333e53d2 100644
    > --- a/arch/x86/kernel/cpu/intel.c
    > +++ b/arch/x86/kernel/cpu/intel.c
    > @@ -1552,3 +1552,24 @@ u8 get_this_hybrid_cpu_type(void)
    >   
    >   	return cpuid_eax(0x0000001a) >> X86_HYBRID_CPU_TYPE_ID_SHIFT;
    >   }
    > +
    > +/*
    > + * These CPUs have an erratum.  A partial write from non-TD
    > + * software (e.g. via MOVNTI variants or UC/WC mapping) to TDX
    > + * private memory poisons that memory, and a subsequent read of
    > + * that memory triggers #MC.
    > + */
    > +static const struct x86_cpu_id tdx_pw_mce_cpu_ids[] __initconst = {
    > +	X86_MATCH_INTEL_FAM6_MODEL(SAPPHIRERAPIDS_X, NULL),
    > +	X86_MATCH_INTEL_FAM6_MODEL(EMERALDRAPIDS_X, NULL),
    > +	{ }
    > +};
    > +
    > +static int __init tdx_erratum_detect(void)
    > +{
    > +	if (x86_match_cpu(tdx_pw_mce_cpu_ids))
    > +		setup_force_cpu_bug(X86_BUG_TDX_PW_MCE);
    > +
    > +	return 0;
    > +}
    > +early_initcall(tdx_erratum_detect);
    
    -- 
    Cheers,
    
    David / dhildenb
    
    
    
    ^ permalink raw reply	[flat|nested] 144+ messages in thread
  • [parent not found: <50386eddbb8046b0b222d385e56e8115ed566526.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <f9148e67e968d7aed4707b67ea9b1aa761401255.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <cee2f2664aac3c5314896c6d14cba50f2617c0e5.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <9b3582c9f3a81ae68b32d9997fcd20baecb63b9b.1685887183.git.kai.huang@intel.com>]
  • * RE: [PATCH v11 00/20] TDX host kernel support
           [not found] <cover.1685887183.git.kai.huang@intel.com>
                       ` (4 preceding siblings ...)
           [not found] ` <9b3582c9f3a81ae68b32d9997fcd20baecb63b9b.1685887183.git.kai.huang@intel.com>
    @ 2023-06-08 21:03 ` Dan Williams
      2023-06-12 10:56   ` Huang, Kai
           [not found] ` <468533166590ff5ed11730350c4af8cdb0b99165.1685887183.git.kai.huang@intel.com>
                       ` (13 subsequent siblings)
      19 siblings, 1 reply; 144+ messages in thread
    From: Dan Williams @ 2023-06-08 21:03 UTC (permalink / raw)
      To: Kai Huang, linux-kernel, kvm
      Cc: linux-mm, dave.hansen, kirill.shutemov, tony.luck, peterz, tglx,
    	seanjc, pbonzini, david, dan.j.williams, rafael.j.wysocki,
    	ying.huang, reinette.chatre, len.brown, ak, isaku.yamahata,
    	chao.gao, sathyanarayanan.kuppuswamy, bagasdotme, sagis,
    	imammedo, kai.huang
    
    Kai Huang wrote:
    > Intel Trusted Domain Extensions (TDX) protects guest VMs from malicious
    > host and certain physical attacks.  TDX specs are available in [1].
    > 
    > This series is the initial support to enable TDX with minimal code to
    > allow KVM to create and run TDX guests.  KVM support for TDX is being
    > developed separately[2].  A new "userspace inaccessible memfd" approach
    > to support TDX private memory is also being developed[3].  The KVM will
    > only support the new "userspace inaccessible memfd" as TDX guest memory.
    
    This memfd approach is incompatible with one of the primary ways that
    new memory topologies like high-bandwidth-memory and CXL are accessed,
    via a device-special-file mapping. There is already precedent for mmap()
    to only be used for communicating address value and not CPU accessible
    memory. See "Userspace P2PDMA with O_DIRECT NVMe devices" [1].
    
    So before this memfd requirement becomes too baked in to the design I
    want to understand if "userspace inaccessible" is the only requirement
    so I can look to add that to the device-special-file interface for
    "device" / "Soft Reserved" memory like HBM and CXL.
    
    [1]: https://lore.kernel.org/all/20221021174116.7200-1-logang@deltatee.com/
    
    
    ^ permalink raw reply	[flat|nested] 144+ messages in thread
  • [parent not found: <468533166590ff5ed11730350c4af8cdb0b99165.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <409448809f7c78191aa27d6d2970ba1384c2d464.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <4e6cd933edd2501147366df7a17e1087560a4320.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <30358db4eff961c69783bbd4d9f3e50932a9a759.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <7bd7d0c6196deb58b54d6e629603775844b1307d.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <17bcbe3e154415ee7a4c77489809a3db0c5ddf3f.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <116cafb15625ac0bcda7b47143921d0c42061b69.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <5aa7506d4fedbf625e3fe8ceeb88af3be1ce97ea.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <927ec9871721d2a50f1aba7d1cf7c3be50e4f49b.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <4e108968c3294189ad150f62df1f146168036342.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <34853e0f8f38ec2fda66b0ba480d4df63b8aab43.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <af4e428ab1245e9441031438e606c14472daf927.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <ec640452a4385d61bec97f8b761ed1ff38898504.1685887183.git.kai.huang@intel.com>]
  • [parent not found: <21b3a45cb73b4e1917c1eba75b7769781a15aa14.1685887183.git.kai.huang@intel.com>]

  • end of thread, other threads:[~2023-06-25 23:26 UTC | newest]
    
    Thread overview: 144+ messages (download: mbox.gz / follow: Atom feed)
    -- links below jump to the message on this page --
         [not found] <cover.1685887183.git.kai.huang@intel.com>
         [not found] ` <86f2a8814240f4bbe850f6a09fc9d0b934979d1b.1685887183.git.kai.huang@intel.com>
         [not found]   ` <20230606123821.exit7gyxs42dxotz@box.shutemov.name>
    2023-06-06 22:58     ` [PATCH v11 04/20] x86/cpu: Detect TDX partial write machine check erratum Huang, Kai
    2023-06-07 15:06       ` kirill.shutemov
    2023-06-07 14:15   ` Dave Hansen
    2023-06-07 22:43     ` Huang, Kai
    2023-06-19 11:37       ` Huang, Kai
    2023-06-20 15:44         ` Dave Hansen
    2023-06-20 23:11           ` Huang, Kai
    2023-06-19 12:21   ` David Hildenbrand
    2023-06-20 10:31     ` Huang, Kai
    2023-06-20 15:39     ` Dave Hansen
    2023-06-20 16:03       ` David Hildenbrand
    2023-06-20 16:21         ` Dave Hansen
         [not found] ` <50386eddbb8046b0b222d385e56e8115ed566526.1685887183.git.kai.huang@intel.com>
    2023-06-07 15:25   ` [PATCH v11 08/20] x86/virt/tdx: Get information about TDX module and TDX-capable memory Dave Hansen
    2023-06-08  0:27   ` kirill.shutemov
    2023-06-08  2:40     ` Huang, Kai
    2023-06-08 11:41       ` kirill.shutemov
    2023-06-08 13:13         ` Dave Hansen
    2023-06-12  2:00           ` Huang, Kai
    2023-06-08 23:29         ` Isaku Yamahata
    2023-06-08 23:54           ` kirill.shutemov
    2023-06-09  1:33             ` Isaku Yamahata
    2023-06-09 10:02   ` kirill.shutemov
    2023-06-12  2:00     ` Huang, Kai
    2023-06-19 13:29   ` David Hildenbrand
    2023-06-19 23:51     ` Huang, Kai
         [not found] ` <f9148e67e968d7aed4707b67ea9b1aa761401255.1685887183.git.kai.huang@intel.com>
    2023-06-07 15:54   ` [PATCH v11 10/20] x86/virt/tdx: Add placeholder to construct TDMRs to cover all TDX memory regions Dave Hansen
    2023-06-07 15:57   ` Dave Hansen
    2023-06-08 10:18     ` Huang, Kai
    2023-06-08 22:52   ` kirill.shutemov
    2023-06-12  2:21     ` Huang, Kai
    2023-06-12  3:01       ` Dave Hansen
         [not found] ` <cee2f2664aac3c5314896c6d14cba50f2617c0e5.1685887183.git.kai.huang@intel.com>
    2023-06-08  0:08   ` [PATCH v11 03/20] x86/virt/tdx: Make INTEL_TDX_HOST depend on X86_X2APIC kirill.shutemov
         [not found] ` <9b3582c9f3a81ae68b32d9997fcd20baecb63b9b.1685887183.git.kai.huang@intel.com>
    2023-06-07  8:19   ` [PATCH v11 06/20] x86/virt/tdx: Handle SEAMCALL running out of entropy error Isaku Yamahata
    2023-06-07 15:08   ` Dave Hansen
    2023-06-07 23:36     ` Huang, Kai
    2023-06-08  0:29       ` Dave Hansen
    2023-06-08  0:08   ` kirill.shutemov
    2023-06-09 14:42   ` Nikolay Borisov
    2023-06-12 11:04     ` Huang, Kai
    2023-06-19 13:00   ` David Hildenbrand
    2023-06-20 10:39     ` Huang, Kai
    2023-06-20 11:14       ` David Hildenbrand
    2023-06-08 21:03 ` [PATCH v11 00/20] TDX host kernel support Dan Williams
    2023-06-12 10:56   ` Huang, Kai
         [not found] ` <468533166590ff5ed11730350c4af8cdb0b99165.1685887183.git.kai.huang@intel.com>
    2023-06-07 15:48   ` [PATCH v11 09/20] x86/virt/tdx: Use all system memory when initializing TDX module as TDX memory Dave Hansen
    2023-06-07 23:22     ` Huang, Kai
    2023-06-08 22:40   ` kirill.shutemov
         [not found] ` <409448809f7c78191aa27d6d2970ba1384c2d464.1685887183.git.kai.huang@intel.com>
    2023-06-08 23:53   ` [PATCH v11 13/20] x86/virt/tdx: Designate reserved areas for all TDMRs kirill.shutemov
         [not found] ` <4e6cd933edd2501147366df7a17e1087560a4320.1685887183.git.kai.huang@intel.com>
    2023-06-08 23:53   ` [PATCH v11 14/20] x86/virt/tdx: Configure TDX module with the TDMRs and global KeyID kirill.shutemov
         [not found] ` <30358db4eff961c69783bbd4d9f3e50932a9a759.1685887183.git.kai.huang@intel.com>
    2023-06-08 23:53   ` [PATCH v11 15/20] x86/virt/tdx: Configure global KeyID on all packages kirill.shutemov
    2023-06-15  8:12   ` Nikolay Borisov
    2023-06-15 22:24     ` Huang, Kai
    2023-06-19 14:56       ` kirill.shutemov
    2023-06-19 23:38         ` Huang, Kai
         [not found] ` <7bd7d0c6196deb58b54d6e629603775844b1307d.1685887183.git.kai.huang@intel.com>
    2023-06-09 10:03   ` [PATCH v11 16/20] x86/virt/tdx: Initialize all TDMRs kirill.shutemov
         [not found] ` <17bcbe3e154415ee7a4c77489809a3db0c5ddf3f.1685887183.git.kai.huang@intel.com>
    2023-06-09 10:14   ` [PATCH v11 17/20] x86/kexec: Flush cache of TDX private memory kirill.shutemov
         [not found] ` <116cafb15625ac0bcda7b47143921d0c42061b69.1685887183.git.kai.huang@intel.com>
    2023-06-09 13:17   ` [PATCH v11 19/20] x86/mce: Improve error log of kernel space TDX #MC due to erratum kirill.shutemov
    2023-06-12  3:08     ` Huang, Kai
    2023-06-12  7:59       ` kirill.shutemov
    2023-06-12 13:51         ` Dave Hansen
    2023-06-12 23:31           ` Huang, Kai
         [not found] ` <5aa7506d4fedbf625e3fe8ceeb88af3be1ce97ea.1685887183.git.kai.huang@intel.com>
    2023-06-09 13:23   ` [PATCH v11 18/20] x86: Handle TDX erratum to reset TDX private memory during kexec() and reboot kirill.shutemov
    2023-06-12  3:06     ` Huang, Kai
    2023-06-12  7:58       ` kirill.shutemov
    2023-06-12 10:27         ` Huang, Kai
    2023-06-12 11:48           ` kirill.shutemov
    2023-06-12 13:18             ` David Laight
    2023-06-12 13:47           ` Dave Hansen
    2023-06-13  0:51             ` Huang, Kai
    2023-06-13 11:05               ` kirill.shutemov
    2023-06-14  0:15                 ` Huang, Kai
    2023-06-13 14:25               ` Dave Hansen
    2023-06-13 23:18                 ` Huang, Kai
    2023-06-14  0:24                   ` Dave Hansen
    2023-06-14  0:38                     ` Huang, Kai
    2023-06-14  0:42                       ` Huang, Kai
    2023-06-19 11:43             ` Huang, Kai
    2023-06-19 14:31               ` Dave Hansen
    2023-06-19 14:46                 ` kirill.shutemov
    2023-06-19 23:35                   ` Huang, Kai
    2023-06-19 23:41                   ` Dave Hansen
    2023-06-20  0:56                     ` Huang, Kai
    2023-06-20  1:06                       ` Dave Hansen
    2023-06-20  7:58                         ` Peter Zijlstra
    2023-06-25 15:30                         ` Huang, Kai
    2023-06-25 23:26                           ` Huang, Kai
    2023-06-20  7:48                     ` Peter Zijlstra
    2023-06-20  8:11       ` Peter Zijlstra
    2023-06-20 10:42         ` Huang, Kai
    2023-06-20 10:56           ` Peter Zijlstra
    2023-06-14  9:33   ` Huang, Kai
    2023-06-14 10:02     ` kirill.shutemov
    2023-06-14 10:58       ` Huang, Kai
    2023-06-14 11:08         ` kirill.shutemov
    2023-06-14 11:17           ` Huang, Kai
         [not found] ` <927ec9871721d2a50f1aba7d1cf7c3be50e4f49b.1685887183.git.kai.huang@intel.com>
    2023-06-07 16:05   ` [PATCH v11 11/20] x86/virt/tdx: Fill out TDMRs to cover all TDX memory regions Dave Hansen
    2023-06-08 10:48     ` Huang, Kai
    2023-06-08 13:11       ` Dave Hansen
    2023-06-12  2:33         ` Huang, Kai
    2023-06-12 14:33           ` kirill.shutemov
    2023-06-12 22:10             ` Huang, Kai
    2023-06-13 10:18               ` kirill.shutemov
    2023-06-13 23:19                 ` Huang, Kai
    2023-06-08 23:02   ` kirill.shutemov
    2023-06-12  2:25     ` Huang, Kai
    2023-06-09  4:01   ` Sathyanarayanan Kuppuswamy
    2023-06-12  2:28     ` Huang, Kai
    2023-06-14 12:31   ` Nikolay Borisov
    2023-06-14 22:45     ` Huang, Kai
         [not found] ` <4e108968c3294189ad150f62df1f146168036342.1685887183.git.kai.huang@intel.com>
    2023-06-08 23:24   ` [PATCH v11 12/20] x86/virt/tdx: Allocate and set up PAMTs for TDMRs kirill.shutemov
    2023-06-08 23:43     ` Dave Hansen
    2023-06-12  2:52       ` Huang, Kai
    2023-06-25 15:38     ` Huang, Kai
    2023-06-15  7:48   ` Nikolay Borisov
         [not found] ` <34853e0f8f38ec2fda66b0ba480d4df63b8aab43.1685887183.git.kai.huang@intel.com>
    2023-06-08 23:56   ` [PATCH v11 20/20] Documentation/x86: Add documentation for TDX host support Dave Hansen
    2023-06-12  3:41     ` Huang, Kai
    2023-06-16  9:02   ` Nikolay Borisov
    2023-06-16 16:26     ` Dave Hansen
         [not found] ` <af4e428ab1245e9441031438e606c14472daf927.1685887183.git.kai.huang@intel.com>
         [not found]   ` <a2da8af2-41a9-a0cf-dbe9-7f0a14bf05fe@linux.intel.com>
    2023-06-06 22:58     ` [PATCH v11 02/20] x86/virt/tdx: Detect TDX during kernel boot Huang, Kai
    2023-06-06 23:44   ` Isaku Yamahata
    2023-06-19 12:12   ` David Hildenbrand
    2023-06-19 23:58     ` Huang, Kai
         [not found] ` <ec640452a4385d61bec97f8b761ed1ff38898504.1685887183.git.kai.huang@intel.com>
    2023-06-06 23:55   ` [PATCH v11 05/20] x86/virt/tdx: Add SEAMCALL infrastructure Isaku Yamahata
    2023-06-07 14:24   ` Dave Hansen
    2023-06-07 18:53     ` Isaku Yamahata
    2023-06-07 19:27       ` Dave Hansen
    2023-06-07 19:47         ` Isaku Yamahata
    2023-06-07 20:08           ` Sean Christopherson
    2023-06-07 20:22             ` Dave Hansen
    2023-06-08  0:51               ` Huang, Kai
    2023-06-08 13:50                 ` Dave Hansen
    2023-06-07 22:56     ` Huang, Kai
    2023-06-08 14:05       ` Dave Hansen
    2023-06-19 12:52   ` David Hildenbrand
    2023-06-20 10:37     ` Huang, Kai
    2023-06-20 12:20       ` kirill.shutemov
    2023-06-20 12:39         ` David Hildenbrand
    2023-06-20 15:15     ` Dave Hansen
         [not found] ` <21b3a45cb73b4e1917c1eba75b7769781a15aa14.1685887183.git.kai.huang@intel.com>
    2023-06-07 15:22   ` [PATCH v11 07/20] x86/virt/tdx: Add skeleton to enable TDX on demand Dave Hansen
    2023-06-08  2:10     ` Huang, Kai
    2023-06-08 13:43       ` Dave Hansen
    2023-06-12 11:21         ` Huang, Kai
    2023-06-19 13:16   ` David Hildenbrand
    2023-06-19 23:28     ` Huang, Kai
    

    This is a public inbox, see mirroring instructions
    for how to clone and mirror all data and code used for this inbox