drm/i915: GEM operations need to be done under the big lock
authorTvrtko Ursulin <tvrtko.ursulin@intel.com>
Thu, 11 Feb 2016 10:27:29 +0000 (10:27 +0000)
committerTvrtko Ursulin <tvrtko.ursulin@intel.com>
Mon, 15 Feb 2016 16:10:18 +0000 (16:10 +0000)
commit12c83d99436b6a4dcd2d2afe7b086509a1391cc5
tree3fba78399217a54010606b5fd4ac0db81ab625a5
parent3f441b825d92af71f8f058d8a228c149915497f0
drm/i915: GEM operations need to be done under the big lock

VMA creation and GEM list management need the big lock.

v2:

Mutex unlock ended on the wrong path somehow. (0-day, Julia Lawall)

Not to mention drm_gem_object_unreference was there in existing
code with no mutex held.

v3:

Some callers of i915_gem_object_create_stolen_for_preallocated
already hold the lock so move the mutex into the other caller
as well.

v4:

Changed to lockdep_assert_held. (Chris Wilson)

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
drivers/gpu/drm/i915/i915_gem_stolen.c
drivers/gpu/drm/i915/intel_display.c