mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 01:04:41 +01:00
drm/xe: Fix memory leak in xe_vm_madvise_ioctl
When check_bo_args_are_sane() validation fails, jump to the new
free_vmas cleanup label to properly free the allocated resources.
This ensures proper cleanup in this error path.
Fixes: 293032eec4 ("drm/xe/bo: Update atomic_access attribute on madvise")
Cc: stable@vger.kernel.org # v6.18+
Reviewed-by: Shuicheng Lin <shuicheng.lin@intel.com>
Signed-off-by: Varun Gupta <varun.gupta@intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Link: https://patch.msgid.link/20260223175145.1532801-1-varun.gupta@intel.com
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
(cherry picked from commit 29bd06faf727a4b76663e4be0f7d770e2d2a7965)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
This commit is contained in:
parent
3091723785
commit
0cfe9c4838
1 changed files with 2 additions and 1 deletions
|
|
@ -453,7 +453,7 @@ int xe_vm_madvise_ioctl(struct drm_device *dev, void *data, struct drm_file *fil
|
|||
madvise_range.num_vmas,
|
||||
args->atomic.val)) {
|
||||
err = -EINVAL;
|
||||
goto madv_fini;
|
||||
goto free_vmas;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -490,6 +490,7 @@ int xe_vm_madvise_ioctl(struct drm_device *dev, void *data, struct drm_file *fil
|
|||
err_fini:
|
||||
if (madvise_range.has_bo_vmas)
|
||||
drm_exec_fini(&exec);
|
||||
free_vmas:
|
||||
kfree(madvise_range.vmas);
|
||||
madvise_range.vmas = NULL;
|
||||
madv_fini:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue