Re: [PATCH v17 18/23] platform/x86: Intel SGX driver

From: Jarkko Sakkinen
Date: Mon Dec 17 2018 - 13:31:53 EST


On Mon, Dec 17, 2018 at 10:07:08AM -0800, Dave Hansen wrote:
> On 12/17/18 10:01 AM, Jarkko Sakkinen wrote:
> >>> + encl->mm = current->mm; <---------------------------------> + encl->base = secs->base;
> >>> + encl->size = secs->size;
> >>> + encl->ssaframesize = secs->ssa_frame_size;
> >>> + encl->backing = backing;
> >>> +
> >>> + return encl;
> >>> +}
> >> How is this OK without taking a reference on the mm?
> >>
> >> I have a feeling a bunch of your bugs with the mmu notifiers and so
> >> forth are because the refcounting is wrong here.
> >>
> >> Sean's SGX_ENCL_MM_RELEASED would, I think be unnecessary if you just
> >> take a refcount here and release it when the enclave is destroyed.
> > Right, atomic_inc(encl->mm->count) here and once when releasing.
> >
> > The we would not even need the whole mmu notifier in the first place.
>
> Please use mmget()/mmput().

There's now a patch to test on top of the master.

/Jarkko