Skip to content
Snippets Groups Projects
Commit 321a6084 authored by Chris Wilson's avatar Chris Wilson Committed by Jocelyn Falempe
Browse files

drm/i915/gt: Use i915_vm_put on ppgtt_create error paths

Now that the scratch page and page directories have a reference back to
the i915_address_space, we cannot do an immediate free of the ppgtt upon
error as those buffer objects will perform a later i915_vm_put in their
deferred frees.

The downside is that by replacing the onion unwind along the error
paths, the ppgtt cleanup must handle a partially constructed vm. This
includes ensuring that the vm->cleanup is set prior to the error path.

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/6900


Signed-off-by: default avatarChris Wilson <chris.p.wilson@intel.com>
Fixes: 4d8151ae ("drm/i915: Don't free shared locks while shared")
Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: <stable@vger.kernel.org> # v5.14+
Reviewed-by: default avatarMatthew Auld <matthew.auld@intel.com>
Signed-off-by: default avatarMatthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220926153333.102195-1-matthew.auld@intel.com


(cherry picked from commit c286558f58535cf97b717b946d6c96d774a09d17)
Signed-off-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
(cherry picked from commit 20e377e7b2e7c327039f10db80ba5bcc1f6c882d)
parent 88f4d511
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment