aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_breadcrumbs.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2017-03-15 21:07:26 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2017-03-15 21:45:41 +0000
commitdb93991bf515916e181aa3ddb5a6cbc8b86bdc42 (patch)
tree4fa5df16ad82773695fbc65ffea8f14ae886c10f /drivers/gpu/drm/i915/intel_breadcrumbs.c
parentdrm/i915/breadcrumbs: Assert that we do not shortcut the current bottom-half (diff)
downloadlinux-dev-db93991bf515916e181aa3ddb5a6cbc8b86bdc42.tar.xz
linux-dev-db93991bf515916e181aa3ddb5a6cbc8b86bdc42.zip
drm/i915: Only attempt to signal the request once from the interrupt handler
Check that request has not been signaled before acquiring a reference to the request for signaling later in the interrupt handler. The loading of the cacheline (for request->fence.flags) should be "free" when followed by the locked increment of the request->fence.refcount (which then sets the cacheline to exclusive mode), i.e. the cost of test_bit prior to an atomic_inc should be negligible. This should benefit us when we have a pile of bare breadcrumbs (interrupted execbuf) where we may get interrupts faster than we can get rid of the intel_wait, or if the device is too slow to run the bottom-half between interrupts. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Mika Kuoppala <mika.kuoppala@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/20170315210726.12095-5-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers/gpu/drm/i915/intel_breadcrumbs.c')
0 files changed, 0 insertions, 0 deletions