Re: [PATCH v21 16/28] x86/sgx: Add the Linux SGX Enclave Driver

From: Jethro Beekman
Date: Wed Aug 07 2019 - 12:45:34 EST


ECPM permissions are mentioned in SDM EADD instruction operation. PTE I don't know.

--
Jethro Beekman | Fortanix

On 2019-08-07 08:17, Jarkko Sakkinen wrote:
On Wed, Aug 07, 2019 at 06:15:34PM +0300, Jarkko Sakkinen wrote:
On Mon, Jul 29, 2019 at 11:17:57AM +0000, Ayoun, Serge wrote:
+ /* TCS pages need to be RW in the PTEs, but can be 0 in the EPCM. */
+ if ((secinfo.flags & SGX_SECINFO_PAGE_TYPE_MASK) ==
SGX_SECINFO_TCS)
+ prot |= PROT_READ | PROT_WRITE;

For TCS pages you add both RD and WR maximum protection bits.
For the enclave to be able to run, user mode will have to change the
"vma->vm_flags" from PROT_NONE to PROT_READ | PROT_WRITE (otherwise
eenter fails). This is exactly what your selftest does.

Recap where the TCS requirements came from? Why does it need
RW in PTEs and can be 0 in the EPCM? The comment should explain
it rather leave it as a claim IMHO.

I mean after ~3 weeks of not looking into SGX (because being
on vacation etc.) I cannot remember details of this.

/Jarkko


Attachment: smime.p7s
Description: S/MIME Cryptographic Signature