Message ID | 20140807152736.GA10299@mwanda (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thu, Aug 7, 2014 at 11:27 AM, Dan Carpenter <dan.carpenter@oracle.com> wrote: > We can easily return -ENOMEM here if kzalloc() fails. > > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > > diff --git a/drivers/gpu/drm/radeon/radeon_vm.c b/drivers/gpu/drm/radeon/radeon_vm.c > index ccae4d9..d15d987 100644 > --- a/drivers/gpu/drm/radeon/radeon_vm.c > +++ b/drivers/gpu/drm/radeon/radeon_vm.c > @@ -483,6 +483,8 @@ int radeon_vm_bo_set_addr(struct radeon_device *rdev, > /* add a clone of the bo_va to clear the old address */ > struct radeon_bo_va *tmp; > tmp = kzalloc(sizeof(struct radeon_bo_va), GFP_KERNEL); > + if (!tmp) > + return -ENOMEM; We need to drop the lock here too. I'll apply and fix it up. Thanks! Alex > tmp->it.start = bo_va->it.start; > tmp->it.last = bo_va->it.last; > tmp->vm = vm; > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/dri-devel
I'm 100% sure that I've fixed that as well with a follow up patch. Looks like that one didn't made it into 3.17 Christian. Am 07.08.2014 um 17:31 schrieb Alex Deucher: > On Thu, Aug 7, 2014 at 11:27 AM, Dan Carpenter <dan.carpenter@oracle.com> wrote: >> We can easily return -ENOMEM here if kzalloc() fails. >> >> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> >> >> diff --git a/drivers/gpu/drm/radeon/radeon_vm.c b/drivers/gpu/drm/radeon/radeon_vm.c >> index ccae4d9..d15d987 100644 >> --- a/drivers/gpu/drm/radeon/radeon_vm.c >> +++ b/drivers/gpu/drm/radeon/radeon_vm.c >> @@ -483,6 +483,8 @@ int radeon_vm_bo_set_addr(struct radeon_device *rdev, >> /* add a clone of the bo_va to clear the old address */ >> struct radeon_bo_va *tmp; >> tmp = kzalloc(sizeof(struct radeon_bo_va), GFP_KERNEL); >> + if (!tmp) >> + return -ENOMEM; > We need to drop the lock here too. I'll apply and fix it up. Thanks! > > Alex > >> tmp->it.start = bo_va->it.start; >> tmp->it.last = bo_va->it.last; >> tmp->vm = vm; >> _______________________________________________ >> dri-devel mailing list >> dri-devel@lists.freedesktop.org >> http://lists.freedesktop.org/mailman/listinfo/dri-devel
On Thu, Aug 07, 2014 at 11:31:15AM -0400, Alex Deucher wrote: > On Thu, Aug 7, 2014 at 11:27 AM, Dan Carpenter <dan.carpenter@oracle.com> wrote: > > We can easily return -ENOMEM here if kzalloc() fails. > > > > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > > > > diff --git a/drivers/gpu/drm/radeon/radeon_vm.c b/drivers/gpu/drm/radeon/radeon_vm.c > > index ccae4d9..d15d987 100644 > > --- a/drivers/gpu/drm/radeon/radeon_vm.c > > +++ b/drivers/gpu/drm/radeon/radeon_vm.c > > @@ -483,6 +483,8 @@ int radeon_vm_bo_set_addr(struct radeon_device *rdev, > > /* add a clone of the bo_va to clear the old address */ > > struct radeon_bo_va *tmp; > > tmp = kzalloc(sizeof(struct radeon_bo_va), GFP_KERNEL); > > + if (!tmp) > > + return -ENOMEM; > > We need to drop the lock here too. I'll apply and fix it up. Thanks! > Gar. I'm sorry. I thought it looked easier than it was. Also I really should have caught that in my qc. :/ I'm not sure what happened. regards, dan carpenter
diff --git a/drivers/gpu/drm/radeon/radeon_vm.c b/drivers/gpu/drm/radeon/radeon_vm.c index ccae4d9..d15d987 100644 --- a/drivers/gpu/drm/radeon/radeon_vm.c +++ b/drivers/gpu/drm/radeon/radeon_vm.c @@ -483,6 +483,8 @@ int radeon_vm_bo_set_addr(struct radeon_device *rdev, /* add a clone of the bo_va to clear the old address */ struct radeon_bo_va *tmp; tmp = kzalloc(sizeof(struct radeon_bo_va), GFP_KERNEL); + if (!tmp) + return -ENOMEM; tmp->it.start = bo_va->it.start; tmp->it.last = bo_va->it.last; tmp->vm = vm;
We can easily return -ENOMEM here if kzalloc() fails. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>