• Maarten Lankhorst's avatar
    drm/i915: Change locking for struct_mutex, v3. · f935675f
    Maarten Lankhorst authored
    struct_mutex is being locked for every plane in intel_prepare_plane_fb
    and intel_cleanup_plane_fb.
    
    Require the caller to hold the mutex, and only acquire the mutex for
    each helper call. This way the lock only needs to be acquired
    twice in ->atomic_commit(). Once for pinning new framebuffers at the
    start, the second time for unpinning old framebuffer.
    
    Changes since v1:
    - Use mutex_lock_interruptible instead of i915 variant,
      to prevent a deadlock when called from the reset code.
    Changes since v2:
    - Clarify struct_mutex is locked by the caller.
    Signed-off-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Reviewed-by: Matt Roper <matthew.d.roper@intel.com> #v1
    Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    f935675f
intel_display.c 436 KB