[PATCH] drm/amdkfd: NULL dereference involving create_process()

Felix Kuehling felix.kuehling at amd.com
Wed Jun 14 18:34:44 UTC 2017


Yeah, I saw this earlier. I'm on the amd-gfx list.

The patch looks good to me. Feel free to add my R-b. Do you want to
apply it to amd-staging-4.11 and drm-next? I can take care of
amd-kfd-staging and the release branches.

Thanks,
  Felix


On 17-06-14 12:41 PM, Deucher, Alexander wrote:
> > -----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;



More information about the amd-gfx mailing list