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. /Jarkko