• Dave Airlie's avatar
    drm/dp/mst: close deadlock in connector destruction. · 6b8eeca6
    Dave Airlie authored
    I've only seen this once, and I failed to capture the
    lockdep backtrace, but I did some investigations.
    
    If we are calling into the MST layer from EDID probing,
    we have the mode_config mutex held, if during that EDID
    probing, the MST hub goes away, then we can get a deadlock
    where the connector destruction function in the driver
    tries to retake the mode config mutex.
    
    This offloads connector destruction to a workqueue,
    and avoid the subsequenct lock ordering issue.
    Acked-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
    6b8eeca6
drm_dp_mst_helper.h 14.1 KB