drm/xe/svm: fix dereferencing error pointer in drm_gpusvm_range_alloc()
authorHarshit Mogalapalli <harshit.m.mogalapalli@oracle.com>
Sun, 23 Mar 2025 12:49:06 +0000 (05:49 -0700)
committerMatthew Brost <matthew.brost@intel.com>
Tue, 22 Apr 2025 16:25:44 +0000 (09:25 -0700)
commit7a0322122cfdd9a6f10fc7701023d75c98eb3d22
tree12f19857e1f551478a4779e8362849dbb3daa8f4
parent104080e33937aad54b4fbbe847bba750847abfdb
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: 99624bdff867 ("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
drivers/gpu/drm/xe/xe_svm.c