]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Clear execbuf's vma backpointer upon release
authorChris Wilson <chris@chris-wilson.co.uk>
Thu, 22 Jun 2017 10:47:22 +0000 (11:47 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 26 Jun 2017 08:38:43 +0000 (10:38 +0200)
commit43b5412a1470cc42055485044765a2cd3fa0815a
treebd779b4e1b02032aa1947a87bb49c109edee21ee
parent5e4a575fbc4abc37d6af4b62a36c06a2a98b678d
drm/i915: Clear execbuf's vma backpointer upon release

commit a3260046f7bb ("drm/i915: Eliminate lots of iterations over the
execobjects array") jiggled around the error handling and replace a test
that we cleaned up properly after ourselves with an assertion. That
assertion failed because in the release function (moments after the
assertion) we were indeed forgetting to mark the vma as cleared. The
consequence was when testing an invalid relocation address, we would try
to release the vma twice (following the couple of attempts to verify the
address) and on the second release notice that the first release was
incomplete.

Testcase: igt/gem_reloc_overflow/invalid-address
Fixes: a3260046f7bb ("drm/i915: Eliminate lots of iterations over the execobjects array")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170622104722.2583-1-chris@chris-wilson.co.uk
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
(cherry picked from commit 51d05e1b29676a0425749a1533b87e3ad3c6f176)
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_gem_execbuffer.c