drm/i915/gem: Take local vma references for the parser
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 13 Jan 2020 15:45:55 +0000 (15:45 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 14 Jan 2020 15:25:12 +0000 (15:25 +0000)
commit36c8e356a76e147f0b631fd29838147c01b50d04
treeade5b1a331d5d7f7fb0c3944877c36ad6ec55c3c
parent88a57514cf79327f13064f83be6186b139bfcc05
drm/i915/gem: Take local vma references for the parser

Take and hold a reference to each of the vma (and their objects) as we
process them with the cmdparser. This stops them being freed during the
work if the GEM execbuf is interrupted and the request we expected to
keep the objects alive is incomplete.

Fixes: 686c7c35abc2 ("drm/i915/gem: Asynchronous cmdparser")
Closes: https://gitlab.freedesktop.org/drm/intel/issues/970
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200113154555.1909639-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c