Message ID | 20201202162200.88941-1-jarkko@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | x86/sgx: Initialize "ret" in sgx_ioc_enclave_add_pages() | expand |
On Wed, Dec 02, 2020 at 06:22:00PM +0200, Jarkko Sakkinen wrote: > Initialize "ret" to zero as otherwise a zero length address range will > leave it uninitialized. That length is: * @length: length of the data (multiple of the page size) I think we wanna fail this even earlier when it wants to add data of length 0 because that sounds nonsensical to me. Or is there some use case for zero-length data? Btw, pls CC lkml on patch submissions. Thx.
On Wed, Dec 02, 2020 at 06:38:29PM +0100, Borislav Petkov wrote: > On Wed, Dec 02, 2020 at 06:22:00PM +0200, Jarkko Sakkinen wrote: > > Initialize "ret" to zero as otherwise a zero length address range will > > leave it uninitialized. > > That length is: > > * @length: length of the data (multiple of the page size) > > I think we wanna fail this even earlier when it wants to add data of > length 0 because that sounds nonsensical to me. Or is there some use > case for zero-length data? > > Btw, pls CC lkml on patch submissions. Yeah, makes sense to fail right after copying the parameter struct with -EINVAL. > Thx. > > -- > Regards/Gruss, > Boris. > > https://people.kernel.org/tglx/notes-about-netiquette > /Jarkko
diff --git a/arch/x86/kernel/cpu/sgx/ioctl.c b/arch/x86/kernel/cpu/sgx/ioctl.c index c206aee80a04..36a244504da2 100644 --- a/arch/x86/kernel/cpu/sgx/ioctl.c +++ b/arch/x86/kernel/cpu/sgx/ioctl.c @@ -415,7 +415,7 @@ static long sgx_ioc_enclave_add_pages(struct sgx_encl *encl, void __user *arg) struct sgx_enclave_add_pages add_arg; struct sgx_secinfo secinfo; unsigned long c; - int ret; + int ret = 0; if (!test_bit(SGX_ENCL_CREATED, &encl->flags) || test_bit(SGX_ENCL_INITIALIZED, &encl->flags))
Initialize "ret" to zero as otherwise a zero length address range will leave it uninitialized. Cc: Dave Hansen <dave.hansen@linux.intel.com> Cc: Borislav Petkov <bp@alien8.de> Link: https://lore.kernel.org/linux-sgx/X8ehQssnslm194ld@mwanda/ Fixes: c6d26d370767 ("x86/sgx: Add SGX_IOC_ENCLAVE_ADD_PAGES") Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Jarkko Sakkinen <jarkko@kernel.org> --- arch/x86/kernel/cpu/sgx/ioctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)