Skip to content

Commit c1c9cad

Browse files
harshimogalapallilucasdemarchi
authored andcommitted
drm/xe/svm: fix dereferencing error pointer in drm_gpusvm_range_alloc()
xe_svm_range_alloc() returns ERR_PTR(-ENOMEM) on failure and there is a dereference of "range" after that: --> range->gpusvm = gpusvm; In xe_svm_range_alloc(), when memory allocation fails return NULL instead to handle this situation. Fixes: 99624bd ("drm/gpusvm: Add support for GPU Shared Virtual Memory") Reported-by: Dan Carpenter <dan.carpenter@linaro.org> Closes: https://lore.kernel.org/all/adaef4dd-5866-48ca-bc22-4a1ddef20381@stanley.mountain/ Signed-off-by: Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com> Reviewed-by: Matthew Brost <matthew.brost@intel.com> Signed-off-by: Matthew Brost <matthew.brost@intel.com> Link: https://lore.kernel.org/r/20250323124907.3946370-1-harshit.m.mogalapalli@oracle.com (cherry picked from commit 7a03221) Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
1 parent b443265 commit c1c9cad

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

drivers/gpu/drm/xe/xe_svm.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ xe_svm_range_alloc(struct drm_gpusvm *gpusvm)
7979

8080
range = kzalloc(sizeof(*range), GFP_KERNEL);
8181
if (!range)
82-
return ERR_PTR(-ENOMEM);
82+
return NULL;
8383

8484
INIT_LIST_HEAD(&range->garbage_collector_link);
8585
xe_vm_get(gpusvm_to_vm(gpusvm));

0 commit comments

Comments
 (0)