> On Jun 5, 2019, at 8:17 AM, Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx> wrote: > >> On Tue, Jun 04, 2019 at 10:10:22PM +0000, Xing, Cedric wrote: >> A bit off topic here. This mmap()/mprotect() discussion reminds me a >> question (guess for Jarkko): Now that vma->vm_file->private_data keeps >> a pointer to the enclave, why do we store it again in vma->vm_private? >> It isn't a big deal but non-NULL vm_private does prevent mprotect() >> from merging adjacent VMAs. > > Same semantics as with a regular mmap i.e. you can close the file and > still use the mapping. > > The file should be properly refcounted — vm_file should not go away while it’s mapped.