linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Brijesh Singh <brijesh.singh@amd.com>
To: Borislav Petkov <bp@suse.de>
Cc: <brijesh.singh@amd.com>, <simon.guinot@sequanux.org>,
	<linux-efi@vger.kernel.org>, <kvm@vger.kernel.org>,
	<rkrcmar@redhat.com>, <matt@codeblueprint.co.uk>,
	<linux-pci@vger.kernel.org>, <linus.walleij@linaro.org>,
	<gary.hook@amd.com>, <linux-mm@kvack.org>,
	<paul.gortmaker@windriver.com>, <hpa@zytor.com>, <cl@linux.com>,
	<dan.j.williams@intel.com>, <aarcange@redhat.com>,
	<sfr@canb.auug.org.au>, <andriy.shevchenko@linux.intel.com>,
	<herbert@gondor.apana.org.au>, <bhe@redhat.com>,
	<xemul@parallels.com>, <joro@8bytes.org>, <x86@kernel.org>,
	<peterz@infradead.org>, <piotr.luc@intel.com>, <mingo@redhat.com>,
	<msalter@redhat.com>, <ross.zwisler@linux.intel.com>,
	<dyoung@redhat.com>, <thomas.lendacky@amd.com>, <jroedel@suse.de>,
	<keescook@chromium.org>, <arnd@arndb.de>, <toshi.kani@hpe.com>,
	<mathieu.desnoyers@efficios.com>, <luto@kernel.org>,
	<devel@linuxdriverproject.org>, <bhelgaas@google.com>,
	<tglx@linutronix.de>, <mchehab@kernel.org>,
	<iamjoonsoo.kim@lge.com>, <labbott@fedoraproject.org>,
	<tony.luck@intel.com>, <alexandre.bounine@idt.com>,
	<kuleshovmail@gmail.com>, <linux-kernel@vger.kernel.org>,
	<mcgrof@kernel.org>, <mst@redhat.com>,
	<linux-crypto@vger.kernel.org>, <tj@kernel.org>,
	<pbonzini@redhat.com>, <akpm@linux-foundation.org>,
	<davem@davemloft.net>
Subject: Re: [RFC PATCH v2 01/32] x86: Add the Secure Encrypted Virtualization CPU feature
Date: Fri, 3 Mar 2017 15:01:23 -0600	[thread overview]
Message-ID: <404fafd8-bbd6-b8c7-1abb-787ac083ea41@amd.com> (raw)
In-Reply-To: <20170303165915.3233fx7wo74vsslx@pd.tnic>

Hi Boris,

On 03/03/2017 10:59 AM, Borislav Petkov wrote:
> On Thu, Mar 02, 2017 at 10:12:09AM -0500, Brijesh Singh wrote:
>> From: Tom Lendacky <thomas.lendacky@amd.com>
>>
>> Update the CPU features to include identifying and reporting on the
>> Secure Encrypted Virtualization (SEV) feature.  SME is identified by
>> CPUID 0x8000001f, but requires BIOS support to enable it (set bit 23 of
>> MSR_K8_SYSCFG and set bit 0 of MSR_K7_HWCR).  Only show the SEV feature
>> as available if reported by CPUID and enabled by BIOS.
>>
>> Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
>> ---
>>  arch/x86/include/asm/cpufeatures.h |    1 +
>>  arch/x86/include/asm/msr-index.h   |    2 ++
>>  arch/x86/kernel/cpu/amd.c          |   22 ++++++++++++++++++----
>>  arch/x86/kernel/cpu/scattered.c    |    1 +
>>  4 files changed, 22 insertions(+), 4 deletions(-)
>
> So this patchset is not really ontop of Tom's patchset because this
> patch doesn't apply. The reason is, Tom did the SME bit this way:
>
> https://lkml.kernel.org/r/20170216154236.19244.7580.stgit@tlendack-t1.amdoffice.net
>
> but it should've been in scattered.c.
>
>> diff --git a/arch/x86/kernel/cpu/scattered.c b/arch/x86/kernel/cpu/scattered.c
>> index cabda87..c3f58d9 100644
>> --- a/arch/x86/kernel/cpu/scattered.c
>> +++ b/arch/x86/kernel/cpu/scattered.c
>> @@ -31,6 +31,7 @@ static const struct cpuid_bit cpuid_bits[] = {
>>  	{ X86_FEATURE_CPB,		CPUID_EDX,  9, 0x80000007, 0 },
>>  	{ X86_FEATURE_PROC_FEEDBACK,    CPUID_EDX, 11, 0x80000007, 0 },
>>  	{ X86_FEATURE_SME,		CPUID_EAX,  0, 0x8000001f, 0 },
>> +	{ X86_FEATURE_SEV,		CPUID_EAX,  1, 0x8000001f, 0 },
>>  	{ 0, 0, 0, 0, 0 }
>
> ... and here it is in scattered.c, as it should be. So you've used an
> older version of the patch, it seems.
>
> Please sync with Tom to see whether he's reworked the v4 version of that
> patch already. If yes, then you could send only the SME and SEV adding
> patches as a reply to this message so that I can continue reviewing in
> the meantime.
>

Just realized my error, I actually end up using Tom's recent updates to 
v4 instead of original v4. Here is the diff. If you have Tom's v4 
applied then apply this diff before applying SEV v2 version. Sorry about 
that.

Optionally, you also pull the complete tree from github [1].

[1] https://github.com/codomania/tip/tree/sev-rfc-v2


diff --git a/Documentation/admin-guide/kernel-parameters.txt 
b/Documentation/admin-guide/kernel-parameters.txt
index 91c40fa..b91e2495 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -2153,8 +2153,8 @@
  			mem_encrypt=on:		Activate SME
  			mem_encrypt=off:	Do not activate SME

-			Refer to the SME documentation for details on when
-			memory encryption can be activated.
+			Refer to Documentation/x86/amd-memory-encryption.txt
+			for details on when memory encryption can be activated.

  	mem_sleep_default=	[SUSPEND] Default system suspend mode:
  			s2idle  - Suspend-To-Idle
diff --git a/Documentation/x86/amd-memory-encryption.txt 
b/Documentation/x86/amd-memory-encryption.txt
index 0938e89..0b72ff2 100644
--- a/Documentation/x86/amd-memory-encryption.txt
+++ b/Documentation/x86/amd-memory-encryption.txt
@@ -7,9 +7,9 @@ DRAM.  SME can therefore be used to protect the contents 
of DRAM from physical
  attacks on the system.

  A page is encrypted when a page table entry has the encryption bit set 
(see
-below how to determine the position of the bit).  The encryption bit can be
-specified in the cr3 register, allowing the PGD table to be encrypted. Each
-successive level of page tables can also be encrypted.
+below on how to determine its position).  The encryption bit can be 
specified
+in the cr3 register, allowing the PGD table to be encrypted. Each 
successive
+level of page tables can also be encrypted.

  Support for SME can be determined through the CPUID instruction. The CPUID
  function 0x8000001f reports information related to SME:
@@ -17,13 +17,14 @@ function 0x8000001f reports information related to SME:
  	0x8000001f[eax]:
  		Bit[0] indicates support for SME
  	0x8000001f[ebx]:
-		Bit[5:0]  pagetable bit number used to activate memory
-			  encryption
-		Bit[11:6] reduction in physical address space, in bits, when
-			  memory encryption is enabled (this only affects system
-			  physical addresses, not guest physical addresses)
-
-If support for SME is present, MSR 0xc00100010 (SYS_CFG) can be used to
+		Bits[5:0]  pagetable bit number used to activate memory
+			   encryption
+		Bits[11:6] reduction in physical address space, in bits, when
+			   memory encryption is enabled (this only affects
+			   system physical addresses, not guest physical
+			   addresses)
+
+If support for SME is present, MSR 0xc00100010 (MSR_K8_SYSCFG) can be 
used to
  determine if SME is enabled and/or to enable memory encryption:

  	0xc0010010:
@@ -41,7 +42,7 @@ The state of SME in the Linux kernel can be documented 
as follows:
  	  The CPU supports SME (determined through CPUID instruction).

  	- Enabled:
-	  Supported and bit 23 of the SYS_CFG MSR is set.
+	  Supported and bit 23 of MSR_K8_SYSCFG is set.

  	- Active:
  	  Supported, Enabled and the Linux kernel is actively applying
@@ -51,7 +52,9 @@ The state of SME in the Linux kernel can be documented 
as follows:
  SME can also be enabled and activated in the BIOS. If SME is enabled and
  activated in the BIOS, then all memory accesses will be encrypted and 
it will
  not be necessary to activate the Linux memory encryption support.  If 
the BIOS
-merely enables SME (sets bit 23 of the SYS_CFG MSR), then Linux can 
activate
-memory encryption.  However, if BIOS does not enable SME, then Linux 
will not
-attempt to activate memory encryption, even if configured to do so by 
default
-or the mem_encrypt=on command line parameter is specified.
+merely enables SME (sets bit 23 of the MSR_K8_SYSCFG), then Linux can 
activate
+memory encryption by default 
(CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT=y) or
+by supplying mem_encrypt=on on the kernel command line.  However, if 
BIOS does
+not enable SME, then Linux will not be able to activate memory 
encryption, even
+if configured to do so by default or the mem_encrypt=on command line 
parameter
+is specified.
diff --git a/arch/x86/include/asm/cpufeature.h 
b/arch/x86/include/asm/cpufeature.h
index ea2de6a..d59c15c 100644
--- a/arch/x86/include/asm/cpufeature.h
+++ b/arch/x86/include/asm/cpufeature.h
@@ -28,7 +28,6 @@ enum cpuid_leafs
  	CPUID_8000_000A_EDX,
  	CPUID_7_ECX,
  	CPUID_8000_0007_EBX,
-	CPUID_8000_001F_EAX,
  };

  #ifdef CONFIG_X86_FEATURE_NAMES
@@ -79,9 +78,8 @@ extern const char * const x86_bug_flags[NBUGINTS*32];
  	   CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 15, feature_bit) ||	\
  	   CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 16, feature_bit) ||	\
  	   CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 17, feature_bit) ||	\
-	   CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 18, feature_bit) ||	\
  	   REQUIRED_MASK_CHECK					  ||	\
-	   BUILD_BUG_ON_ZERO(NCAPINTS != 19))
+	   BUILD_BUG_ON_ZERO(NCAPINTS != 18))

  #define DISABLED_MASK_BIT_SET(feature_bit)				\
  	 ( CHECK_BIT_IN_MASK_WORD(DISABLED_MASK,  0, feature_bit) ||	\
@@ -102,9 +100,8 @@ extern const char * const x86_bug_flags[NBUGINTS*32];
  	   CHECK_BIT_IN_MASK_WORD(DISABLED_MASK, 15, feature_bit) ||	\
  	   CHECK_BIT_IN_MASK_WORD(DISABLED_MASK, 16, feature_bit) ||	\
  	   CHECK_BIT_IN_MASK_WORD(DISABLED_MASK, 17, feature_bit) ||	\
-	   CHECK_BIT_IN_MASK_WORD(DISABLED_MASK, 18, feature_bit) ||	\
  	   DISABLED_MASK_CHECK					  ||	\
-	   BUILD_BUG_ON_ZERO(NCAPINTS != 19))
+	   BUILD_BUG_ON_ZERO(NCAPINTS != 18))

  #define cpu_has(c, bit)							\
  	(__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 :	\
diff --git a/arch/x86/include/asm/cpufeatures.h 
b/arch/x86/include/asm/cpufeatures.h
index 331fb81..b1a4468 100644
--- a/arch/x86/include/asm/cpufeatures.h
+++ b/arch/x86/include/asm/cpufeatures.h
@@ -12,7 +12,7 @@
  /*
   * Defines x86 CPU feature bits
   */
-#define NCAPINTS	19	/* N 32-bit words worth of info */
+#define NCAPINTS	18	/* N 32-bit words worth of info */
  #define NBUGINTS	1	/* N 32-bit bug flags */

  /*
@@ -187,6 +187,7 @@
   * Reuse free bits when adding new feature flags!
   */

+#define X86_FEATURE_SME		( 7*32+ 0) /* AMD Secure Memory Encryption */
  #define X86_FEATURE_CPB		( 7*32+ 2) /* AMD Core Performance Boost */
  #define X86_FEATURE_EPB		( 7*32+ 3) /* IA32_ENERGY_PERF_BIAS support */
  #define X86_FEATURE_CAT_L3	( 7*32+ 4) /* Cache Allocation Technology L3 */
@@ -296,9 +297,6 @@
  #define X86_FEATURE_SUCCOR	(17*32+1) /* Uncorrectable error 
containment and recovery */
  #define X86_FEATURE_SMCA	(17*32+3) /* Scalable MCA */

-/* AMD-defined CPU features, CPUID level 0x8000001f (eax), word 18 */
-#define X86_FEATURE_SME		(18*32+0) /* Secure Memory Encryption */
-
  /*
   * BUG word(s)
   */
diff --git a/arch/x86/include/asm/disabled-features.h 
b/arch/x86/include/asm/disabled-features.h
index 8b45e08..85599ad 100644
--- a/arch/x86/include/asm/disabled-features.h
+++ b/arch/x86/include/asm/disabled-features.h
@@ -57,7 +57,6 @@
  #define DISABLED_MASK15	0
  #define DISABLED_MASK16	(DISABLE_PKU|DISABLE_OSPKE)
  #define DISABLED_MASK17	0
-#define DISABLED_MASK18	0
-#define DISABLED_MASK_CHECK BUILD_BUG_ON_ZERO(NCAPINTS != 19)
+#define DISABLED_MASK_CHECK BUILD_BUG_ON_ZERO(NCAPINTS != 18)

  #endif /* _ASM_X86_DISABLED_FEATURES_H */
diff --git a/arch/x86/include/asm/required-features.h 
b/arch/x86/include/asm/required-features.h
index 6847d85..fac9a5c 100644
--- a/arch/x86/include/asm/required-features.h
+++ b/arch/x86/include/asm/required-features.h
@@ -100,7 +100,6 @@
  #define REQUIRED_MASK15	0
  #define REQUIRED_MASK16	0
  #define REQUIRED_MASK17	0
-#define REQUIRED_MASK18	0
-#define REQUIRED_MASK_CHECK BUILD_BUG_ON_ZERO(NCAPINTS != 19)
+#define REQUIRED_MASK_CHECK BUILD_BUG_ON_ZERO(NCAPINTS != 18)

  #endif /* _ASM_X86_REQUIRED_FEATURES_H */
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c
index 35a5d5d..6bddda3 100644
--- a/arch/x86/kernel/cpu/amd.c
+++ b/arch/x86/kernel/cpu/amd.c
@@ -615,6 +615,29 @@ static void early_init_amd(struct cpuinfo_x86 *c)
  	 */
  	if (cpu_has_amd_erratum(c, amd_erratum_400))
  		set_cpu_bug(c, X86_BUG_AMD_E400);
+
+	/*
+	 * BIOS support is required for SME. If BIOS has enabld SME then
+	 * adjust x86_phys_bits by the SME physical address space reduction
+	 * value. If BIOS has not enabled SME then don't advertise the
+	 * feature (set in scattered.c).
+	 */
+	if (c->extended_cpuid_level >= 0x8000001f) {
+		if (cpu_has(c, X86_FEATURE_SME)) {
+			u64 msr;
+
+			/* Check if SME is enabled */
+			rdmsrl(MSR_K8_SYSCFG, msr);
+			if (msr & MSR_K8_SYSCFG_MEM_ENCRYPT) {
+				unsigned int ebx;
+
+				ebx = cpuid_ebx(0x8000001f);
+				c->x86_phys_bits -= (ebx >> 6) & 0x3f;
+			} else {
+				clear_cpu_cap(c, X86_FEATURE_SME);
+			}
+		}
+	}
  }

  static void init_amd_k8(struct cpuinfo_x86 *c)
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index 358208d7..c188ae5 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -763,29 +763,6 @@ void get_cpu_cap(struct cpuinfo_x86 *c)
  	if (c->extended_cpuid_level >= 0x8000000a)
  		c->x86_capability[CPUID_8000_000A_EDX] = cpuid_edx(0x8000000a);

-	if (c->extended_cpuid_level >= 0x8000001f) {
-		cpuid(0x8000001f, &eax, &ebx, &ecx, &edx);
-
-		/* SME feature support */
-		if ((c->x86_vendor == X86_VENDOR_AMD) && (eax & 0x01)) {
-			u64 msr;
-
-			/*
-			 * For SME, BIOS support is required. If BIOS has
-			 * enabled SME adjust x86_phys_bits by the SME
-			 * physical address space reduction value. If BIOS
-			 * has not enabled SME don't advertise the feature.
-			 */
-			rdmsrl(MSR_K8_SYSCFG, msr);
-			if (msr & MSR_K8_SYSCFG_MEM_ENCRYPT)
-				c->x86_phys_bits -= (ebx >> 6) & 0x3f;
-			else
-				eax &= ~0x01;
-		}
-
-		c->x86_capability[CPUID_8000_001F_EAX] = eax;
-	}
-
  	init_scattered_cpuid_features(c);

  	/*
diff --git a/arch/x86/kernel/cpu/scattered.c 
b/arch/x86/kernel/cpu/scattered.c
index d979406..cabda87 100644
--- a/arch/x86/kernel/cpu/scattered.c
+++ b/arch/x86/kernel/cpu/scattered.c
@@ -30,6 +30,7 @@ static const struct cpuid_bit cpuid_bits[] = {
  	{ X86_FEATURE_HW_PSTATE,	CPUID_EDX,  7, 0x80000007, 0 },
  	{ X86_FEATURE_CPB,		CPUID_EDX,  9, 0x80000007, 0 },
  	{ X86_FEATURE_PROC_FEEDBACK,    CPUID_EDX, 11, 0x80000007, 0 },
+	{ X86_FEATURE_SME,		CPUID_EAX,  0, 0x8000001f, 0 },
  	{ 0, 0, 0, 0, 0 }
  };

  reply	other threads:[~2017-03-03 21:01 UTC|newest]

Thread overview: 107+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-02 15:12 [RFC PATCH v2 00/32] x86: Secure Encrypted Virtualization (AMD) Brijesh Singh
2017-03-02 15:12 ` [RFC PATCH v2 01/32] x86: Add the Secure Encrypted Virtualization CPU feature Brijesh Singh
2017-03-03 16:59   ` Borislav Petkov
2017-03-03 21:01     ` Brijesh Singh [this message]
2017-03-04 10:11       ` Borislav Petkov
2017-03-06 18:11         ` Brijesh Singh
2017-03-06 20:54           ` Borislav Petkov
2017-03-02 15:12 ` [RFC PATCH v2 02/32] x86: Secure Encrypted Virtualization (SEV) support Brijesh Singh
2017-03-07 11:19   ` Borislav Petkov
2017-03-08 15:06   ` Borislav Petkov
2017-03-02 15:12 ` [RFC PATCH v2 03/32] KVM: SVM: prepare for new bit definition in nested_ctl Brijesh Singh
2017-03-02 15:12 ` [RFC PATCH v2 04/32] KVM: SVM: Add SEV feature definitions to KVM Brijesh Singh
2017-03-07  0:50   ` Borislav Petkov
2017-03-02 15:12 ` [RFC PATCH v2 05/32] x86: Use encrypted access of BOOT related data with SEV Brijesh Singh
2017-03-07 11:09   ` Borislav Petkov
2017-03-16 19:03     ` Tom Lendacky
2017-03-02 15:13 ` [RFC PATCH v2 06/32] x86/pci: Use memremap when walking setup data Brijesh Singh
2017-03-03 20:42   ` Bjorn Helgaas
2017-03-03 21:15     ` Tom Lendacky
2017-03-07  0:03       ` Bjorn Helgaas
2017-03-13 20:08         ` Tom Lendacky
2017-03-02 15:13 ` [RFC PATCH v2 07/32] x86/efi: Access EFI data as encrypted when SEV is active Brijesh Singh
2017-03-07 11:57   ` Borislav Petkov
2017-03-02 15:13 ` [RFC PATCH v2 08/32] x86: Use PAGE_KERNEL protection for ioremap of memory page Brijesh Singh
2017-03-07 14:59   ` Borislav Petkov
2017-03-16 20:04     ` Tom Lendacky
2017-03-17 14:32       ` Tom Lendacky
2017-03-17 14:55         ` Tom Lendacky
2017-03-02 15:13 ` [RFC PATCH v2 09/32] x86: Change early_ioremap to early_memremap for BOOT data Brijesh Singh
2017-03-08  8:46   ` Borislav Petkov
2017-03-02 15:14 ` [RFC PATCH v2 10/32] x86: DMA support for SEV memory encryption Brijesh Singh
2017-03-08 10:56   ` Borislav Petkov
2017-03-02 15:14 ` [RFC PATCH v2 11/32] x86: Unroll string I/O when SEV is active Brijesh Singh
2017-03-02 15:14 ` [RFC PATCH v2 12/32] x86: Add early boot support when running with SEV active Brijesh Singh
2017-03-09 14:07   ` Borislav Petkov
2017-03-09 16:13     ` Paolo Bonzini
2017-03-09 16:29       ` Borislav Petkov
2017-03-10 16:35         ` Brijesh Singh
2017-03-16 10:16           ` Borislav Petkov
2017-03-16 14:28             ` Tom Lendacky
2017-03-16 15:09               ` Borislav Petkov
2017-03-16 16:11                 ` Tom Lendacky
2017-03-16 16:29                   ` Borislav Petkov
2017-03-02 15:15 ` [RFC PATCH v2 13/32] KVM: SVM: Enable SEV by setting the SEV_ENABLE CPU feature Brijesh Singh
2017-03-09 19:29   ` Borislav Petkov
2017-03-02 15:15 ` [RFC PATCH v2 14/32] x86: mm: Provide support to use memblock when spliting large pages Brijesh Singh
2017-03-10 11:06   ` Borislav Petkov
2017-03-10 22:41     ` Brijesh Singh
2017-03-16 13:15       ` Paolo Bonzini
2017-03-16 18:28       ` Borislav Petkov
2017-03-16 22:25         ` Paolo Bonzini
2017-03-17 10:17           ` Borislav Petkov
2017-03-17 10:47             ` Paolo Bonzini
2017-03-17 10:56               ` Borislav Petkov
2017-03-17 11:03                 ` Paolo Bonzini
2017-03-17 11:33                   ` Borislav Petkov
2017-03-17 14:45                     ` Paolo Bonzini
2017-03-18 16:37                       ` Borislav Petkov
2017-04-06 14:05             ` Brijesh Singh
2017-04-06 17:25               ` Borislav Petkov
2017-04-06 18:37                 ` Brijesh Singh
2017-04-07 11:33                   ` Borislav Petkov
2017-04-07 14:50                     ` Brijesh Singh
2017-03-16 12:28   ` Paolo Bonzini
2017-03-02 15:15 ` [RFC PATCH v2 15/32] x86: Add support for changing memory encryption attribute in early boot Brijesh Singh
2017-03-24 17:12   ` Borislav Petkov
2017-03-27 15:07     ` Brijesh Singh
2017-03-02 15:15 ` [RFC PATCH v2 16/32] x86: kvm: Provide support to create Guest and HV shared per-CPU variables Brijesh Singh
2017-03-16 11:06   ` Paolo Bonzini
2017-03-28 18:39   ` Borislav Petkov
2017-03-29 15:21     ` Paolo Bonzini
2017-03-29 15:32       ` Borislav Petkov
2017-03-02 15:15 ` [RFC PATCH v2 17/32] x86: kvmclock: Clear encryption attribute when SEV is active Brijesh Singh
2017-03-02 15:16 ` [RFC PATCH v2 18/32] kvm: svm: Use the hardware provided GPA instead of page walk Brijesh Singh
2017-03-29 15:14   ` Borislav Petkov
2017-03-29 17:08     ` Brijesh Singh
2017-03-02 15:16 ` [RFC PATCH v2 19/32] crypto: ccp: Introduce the AMD Secure Processor device Brijesh Singh
2017-03-02 17:39   ` Mark Rutland
2017-03-02 19:11     ` Brijesh Singh
2017-03-03 13:55       ` Andy Shevchenko
2017-03-02 15:16 ` [RFC PATCH v2 20/32] crypto: ccp: Add Platform Security Processor (PSP) interface support Brijesh Singh
2017-03-02 15:16 ` [RFC PATCH v2 21/32] crypto: ccp: Add Secure Encrypted Virtualization (SEV) " Brijesh Singh
2017-03-02 15:16 ` [RFC PATCH v2 22/32] kvm: svm: prepare to reserve asid for SEV guest Brijesh Singh
2017-03-02 15:17 ` [RFC PATCH v2 23/32] kvm: introduce KVM_MEMORY_ENCRYPT_OP ioctl Brijesh Singh
2017-03-16 10:25   ` Paolo Bonzini
2017-03-02 15:17 ` [RFC PATCH v2 24/32] kvm: x86: prepare for SEV guest management API support Brijesh Singh
2017-03-16 10:33   ` Paolo Bonzini
2017-03-02 15:17 ` [RFC PATCH v2 25/32] kvm: svm: Add support for SEV LAUNCH_START command Brijesh Singh
2017-03-02 15:17 ` [RFC PATCH v2 26/32] kvm: svm: Add support for SEV LAUNCH_UPDATE_DATA command Brijesh Singh
2017-03-16 10:48   ` Paolo Bonzini
2017-03-16 18:20     ` Brijesh Singh
2017-03-02 15:17 ` [RFC PATCH v2 27/32] kvm: svm: Add support for SEV LAUNCH_FINISH command Brijesh Singh
2017-03-02 15:18 ` [RFC PATCH v2 28/32] kvm: svm: Add support for SEV GUEST_STATUS command Brijesh Singh
2017-03-02 15:18 ` [RFC PATCH v2 29/32] kvm: svm: Add support for SEV DEBUG_DECRYPT command Brijesh Singh
2017-03-16 10:54   ` Paolo Bonzini
2017-03-16 18:41     ` Brijesh Singh
2017-03-17 11:09       ` Paolo Bonzini
2017-03-02 15:18 ` [RFC PATCH v2 30/32] kvm: svm: Add support for SEV DEBUG_ENCRYPT command Brijesh Singh
2017-03-16 11:03   ` Paolo Bonzini
2017-03-16 18:34     ` Brijesh Singh
2017-03-02 15:18 ` [RFC PATCH v2 31/32] kvm: svm: Add support for SEV LAUNCH_MEASURE command Brijesh Singh
2017-03-02 15:18 ` [RFC PATCH v2 32/32] x86: kvm: Pin the guest memory when SEV is active Brijesh Singh
2017-03-16 10:38   ` Paolo Bonzini
2017-03-16 18:17     ` Brijesh Singh
2017-03-03 20:33 ` [RFC PATCH v2 00/32] x86: Secure Encrypted Virtualization (AMD) Bjorn Helgaas
2017-03-03 20:51   ` Borislav Petkov
2017-03-03 21:15   ` Brijesh Singh

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=404fafd8-bbd6-b8c7-1abb-787ac083ea41@amd.com \
    --to=brijesh.singh@amd.com \
    --cc=aarcange@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=alexandre.bounine@idt.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=arnd@arndb.de \
    --cc=bhe@redhat.com \
    --cc=bhelgaas@google.com \
    --cc=bp@suse.de \
    --cc=cl@linux.com \
    --cc=dan.j.williams@intel.com \
    --cc=davem@davemloft.net \
    --cc=devel@linuxdriverproject.org \
    --cc=dyoung@redhat.com \
    --cc=gary.hook@amd.com \
    --cc=herbert@gondor.apana.org.au \
    --cc=hpa@zytor.com \
    --cc=iamjoonsoo.kim@lge.com \
    --cc=joro@8bytes.org \
    --cc=jroedel@suse.de \
    --cc=keescook@chromium.org \
    --cc=kuleshovmail@gmail.com \
    --cc=kvm@vger.kernel.org \
    --cc=labbott@fedoraproject.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=luto@kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=matt@codeblueprint.co.uk \
    --cc=mcgrof@kernel.org \
    --cc=mchehab@kernel.org \
    --cc=mingo@redhat.com \
    --cc=msalter@redhat.com \
    --cc=mst@redhat.com \
    --cc=paul.gortmaker@windriver.com \
    --cc=pbonzini@redhat.com \
    --cc=peterz@infradead.org \
    --cc=piotr.luc@intel.com \
    --cc=rkrcmar@redhat.com \
    --cc=ross.zwisler@linux.intel.com \
    --cc=sfr@canb.auug.org.au \
    --cc=simon.guinot@sequanux.org \
    --cc=tglx@linutronix.de \
    --cc=thomas.lendacky@amd.com \
    --cc=tj@kernel.org \
    --cc=tony.luck@intel.com \
    --cc=toshi.kani@hpe.com \
    --cc=x86@kernel.org \
    --cc=xemul@parallels.com \
    /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;
as well as URLs for NNTP newsgroup(s).