]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Use GEM suspend when aborting initialisation
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 6 Jun 2018 14:54:41 +0000 (15:54 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Thu, 7 Jun 2018 07:42:36 +0000 (08:42 +0100)
commit28b52bb648ba8fb1fa4e5979a9176e1ac01d33dd
tree24269dd59133f51bcec3fd9593869ca642b2bc0e
parent4dd0e1e72af43605d43b506f40bed811feff53e7
drm/i915: Use GEM suspend when aborting initialisation

As part of our GEM initialisation now, we send a request to the hardware
in order to record the initial GPU state. This coupled with deferred
idle workers, makes aborting on error tricky. We already have the
mechanism in place to wait on the GPU and cancel all the deferred
workers for suspend, so let's reuse it during the error teardown. It is
already used in places for later init error handling, but doing so at
this point is slightly ugly due to the mutex dance (it's ok, the module
load is still single threaded).

Testcase: igt/drv_module_reload/basic-reload-inject
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180606145441.4460-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_gem.c