Re: [PATCH] x86/sgx: Allows ioctl PROVISION to execute before CREATE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jan 20, 2021 at 11:57:18AM +0800, Tianjia Zhang wrote:
> Hi,
> 
> On 1/20/21 4:05 AM, Sean Christopherson wrote:
> > On Mon, Jan 18, 2021, Tianjia Zhang wrote:
> > > In function sgx_encl_create(), the logic of directly assigning
> > > value to attributes_mask determines that the call to
> > > SGX_IOC_ENCLAVE_PROVISION must be after the command of
> > > SGX_IOC_ENCLAVE_CREATE. If change this assignment statement to
> > > or operation, the PROVISION command can be executed earlier and
> > > more flexibly.
> > > 
> > > Reported-by: Jia Zhang <zhang.jia@xxxxxxxxxxxxxxxxx>
> > > Signed-off-by: Tianjia Zhang <tianjia.zhang@xxxxxxxxxxxxxxxxx>
> > > ---
> > >   arch/x86/kernel/cpu/sgx/ioctl.c | 2 +-
> > >   1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/arch/x86/kernel/cpu/sgx/ioctl.c b/arch/x86/kernel/cpu/sgx/ioctl.c
> > > index f45957c05f69..0ca3fc238bc2 100644
> > > --- a/arch/x86/kernel/cpu/sgx/ioctl.c
> > > +++ b/arch/x86/kernel/cpu/sgx/ioctl.c
> > > @@ -108,7 +108,7 @@ static int sgx_encl_create(struct sgx_encl *encl, struct sgx_secs *secs)
> > >   	encl->base = secs->base;
> > >   	encl->size = secs->size;
> > >   	encl->attributes = secs->attributes;
> > > -	encl->attributes_mask = SGX_ATTR_DEBUG | SGX_ATTR_MODE64BIT | SGX_ATTR_KSS;
> > > +	encl->attributes_mask |= SGX_ATTR_DEBUG | SGX_ATTR_MODE64BIT | SGX_ATTR_KSS;
> > 
> > Alternatively, move the existing code to sgx_open()?  Initializing the field
> > when the encl object is allocated feels more correct.
> > 
> 
> 
> This seems like a good idea. Thanks for your suggestion. I have sent v2
> patch, include the next two patches.

Did you ask from Sean about suggested-by's? Now it looks like
that doing these patches were originally proposed by Sean.

/Jarkko




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux