Re: [PATCH v39 00/24] Intel SGX foundations

From: Greg KH
Date: Sat Oct 03 2020 - 10:32:04 EST


On Sat, Oct 03, 2020 at 07:50:35AM +0300, Jarkko Sakkinen wrote:
> Intel(R) SGX is a set of CPU instructions that can be used by applications
> to set aside private regions of code and data. The code outside the enclave
> is disallowed to access the memory inside the enclave by the CPU access
> control.
>
> There is a new hardware unit in the processor called Memory Encryption
> Engine (MEE) starting from the Skylake microacrhitecture. BIOS can define
> one or many MEE regions that can hold enclave data by configuring them with
> PRMRR registers.
>
> The MEE automatically encrypts the data leaving the processor package to
> the MEE regions. The data is encrypted using a random key whose life-time
> is exactly one power cycle.
>
> The current implementation requires that the firmware sets
> IA32_SGXLEPUBKEYHASH* MSRs as writable so that ultimately the kernel can
> decide what enclaves it wants run. The implementation does not create
> any bottlenecks to support read-only MSRs later on.
>
> You can tell if your CPU supports SGX by looking into /proc/cpuinfo:
>
> cat /proc/cpuinfo | grep sgx

I might be late to the game, but why are you trying to dual-license the
new files you are adding in this patch? How will that help anyone?

I have had many talks with Intel about this in the past, and last I
heard was that when dual-licensing made sense, they would be explicit as
to why it was happening. Or is my memory failing me?

thanks,

greg k-h