Browse Source

drm/radeon: fix error handling in radeon_vm_bo_set_addr

Signed-off-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Christian König 11 years ago
parent
commit
5b75327563
1 changed files with 4 additions and 0 deletions
  1. 4 0
      drivers/gpu/drm/radeon/radeon_vm.c

+ 4 - 0
drivers/gpu/drm/radeon/radeon_vm.c

@@ -472,6 +472,10 @@ int radeon_vm_bo_set_addr(struct radeon_device *rdev,
 	if (bo_va->soffset) {
 		/* add a clone of the bo_va to clear the old address */
 		tmp = kzalloc(sizeof(struct radeon_bo_va), GFP_KERNEL);
+		if (!tmp) {
+			mutex_unlock(&vm->mutex);
+			return -ENOMEM;
+		}
 		tmp->soffset = bo_va->soffset;
 		tmp->eoffset = bo_va->eoffset;
 		tmp->vm = vm;