Thread (77 messages) 77 messages, 8 authors, 2019-06-14

RE: [RFC PATCH 2/9] x86/sgx: Do not naturally align MAP_FIXED address

From: Xing, Cedric <hidden>
Date: 2019-06-13 16:47:18
Also in: lkml, selinux

From: Jarkko Sakkinen [mailto:jarkko.sakkinen@linux.intel.com]
Sent: Thursday, June 13, 2019 6:48 AM

On Thu, Jun 06, 2019 at 06:37:10PM +0300, Jarkko Sakkinen wrote:
quoted
On Wed, Jun 05, 2019 at 01:14:04PM -0700, Andy Lutomirski wrote:
quoted
quoted
On Jun 5, 2019, at 8:17 AM, Jarkko Sakkinen
[off-list ref] wrote:
quoted
quoted
quoted
quoted
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?
quoted
quoted
quoted
quoted
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.

mm already takes care of that so vm_file does not go away. Still we need
an internal refcount for enclaves to synchronize with the swapper. In
summary nothing needs to be done.
I don't get this. The swapper takes a read lock on mm->mmap_sem, which locks the vma, which in turn reference counts vma->vm_file. Why is the internal refcount still needed? 
quoted
Right, makes sense. It is easy one to change essentially just removing
internal refcount from sgx_encl and using file for the same. I'll
update this to my tree along with the changes to remove LKM/ACPI bits
ASAP.

/Jarkko
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help