• Daniel Vetter's avatar
    drm: Drop modeset locking from crtc init function · d0fa1af4
    Daniel Vetter authored
    At driver init no one can access modeset objects and we're
    single-threaded. So locking is just cargo-culting here. Worse, with
    the new ww mutexes and ww mutex slowpath debugging the mutex_lock
    might actually fail, and we don't have the full-blown ww recovery
    dance.
    
    Which then leads to fireworks when we try to unlock the not-locked
    crtc lock.
    
    An audit of all the functions called from here shows that none of them
    contain locking checks, so there's also no reason to keep the locking
    around just for consistency of caller contexts. Besides that I have
    the rule (at least in i915) that such places where we take locks just
    to simplify locking checks and not for correctness always require a
    comment.
    
    This regression was introduced in
    
    commit 51fd371b
    Author: Rob Clark <robdclark@gmail.com>
    Date:   Tue Nov 19 12:10:12 2013 -0500
    
        drm: convert crtc and connection_mutex to ww_mutex (v5)
    
    v2: Don't drop the lock_init call, spotted by the 0day builder.
    
    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=83341
    Cc: Rob Clark <robdclark@gmail.com>
    Cc: thellstrom@vmware.com
    Cc: maarten.lankhorst@canonical.com
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
    d0fa1af4
drm_crtc.c 137 KB