> -----Original Message----- > From: Dan Carpenter [mailto:dan.carpenter at oracle.com] > Sent: Wednesday, June 14, 2017 6:59 AM > To: Oded Gabbay; Alexey Skidanov > Cc: Deucher, Alexander; Koenig, Christian; David Airlie; dri- > devel at lists.freedesktop.org; amd-gfx at lists.freedesktop.org; kernel- > janitors at vger.kernel.org > Subject: [PATCH] drm/amdkfd: NULL dereference involving create_process() > > We accidentally return ERR_PTR(0) which is NULL. The caller is not > expecting that and it leads to an Oops. > > Fixes: dd59239a9862 ("amdkfd: init aperture once per process") > Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com> Include Felix. Alex > > diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c > b/drivers/gpu/drm/amd/amdkfd/kfd_process.c > index 84d1ffd1eef9..1190d06884ed 100644 > --- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c > +++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c > @@ -318,7 +318,8 @@ static struct kfd_process *create_process(const struct > task_struct *thread) > > /* init process apertures*/ > process->is_32bit_user_mode = in_compat_syscall(); > - if (kfd_init_apertures(process) != 0) > + err = kfd_init_apertures(process); > + if (err != 0) > goto err_init_apretures; > > return process;