diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-07-04 23:35:27 +0200 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-07-11 14:36:34 +0200 |
commit | 2adbee62e00d869a30cb93ea2269e5ea26a9bbc4 (patch) | |
tree | a58ecc9d6d040bb8e29b2cbc7fea1e7ae757347c /drivers/gpu/drm/i915/intel_ringbuffer.h | |
parent | 41a05a3a5cdc5d731014588b9a24759af1804d48 (diff) |
drm/i915: queue work outside spinlock in hsw_pm_irq_handler
And kill the comment about it. Queueing work is a barrier type event,
no amount of locking will help in ordering things (as long as we queue
the work after having updated all relevant data structures). Also, the
queue_work works itself as a sufficient memory barrier.
Again on the surface this is just a tiny micro-optimization to reduce
the hold-time of dev_priv->irq_lock. But the better reason is that it
reduces superficial locking and so makes it clearer what we actually
need for correctness.
Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_ringbuffer.h')
0 files changed, 0 insertions, 0 deletions