Hi all, So this is the second iteration of my connector locking series. This tries to clarify the cargo-culted locking rules around hotadd/removing drm_connector, which was added to support DP MST. I want to get this in first for a release or so just to document all the locking rules we have (and make sure there's no callchain that I've forgotten) before trying to rework the connector lifetime handling to not require massive amounts of locks and block everything in hotadd/remove. Changes to last time around: - Now with radeon! - No hotplug for encoders, so no locking WARNINGs for those (Dave). - A bit of polish all over. - Thrown in the mode_group removal for good measure (but that one's really not related to this, only noticed it while reading around code). Feedback, review and comments highly welcome! Cheers, Daniel Daniel Vetter (14): drm: Simplify drm_for_each_legacy_plane arguments drm: Add modeset object iterators drm/probe-helper: Grab mode_config.mutex in poll_init/enable drm/fbdev-helper: Grab mode_config.mutex in drm_fb_helper_single_add_all_connectors drm: Check locking in drm_for_each_connector drm/i915: Use drm_for_each_fb in i915_debugfs.c drm: Check locking in drm_for_each_fb drm/i915: Take all modeset locks for DP MST hotplug drm/radeon: Take all modeset locks for DP MST hotplug drm: Amend connector list locking rules drm: Roll out drm_for_each_connector more drm: Roll out drm_for_each_{plane,crtc,encoder} drm: Stop filtering according to mode_group in getresources drm: gc now dead mode_group code drivers/gpu/drm/drm_atomic.c | 2 +- drivers/gpu/drm/drm_atomic_helper.c | 4 +- drivers/gpu/drm/drm_crtc.c | 206 +++++++----------------------- drivers/gpu/drm/drm_crtc_helper.c | 42 +++--- drivers/gpu/drm/drm_drv.c | 12 -- drivers/gpu/drm/drm_edid.c | 2 +- drivers/gpu/drm/drm_fb_cma_helper.c | 2 +- drivers/gpu/drm/drm_fb_helper.c | 19 ++- drivers/gpu/drm/drm_modeset_lock.c | 7 +- drivers/gpu/drm/drm_of.c | 2 +- drivers/gpu/drm/drm_plane_helper.c | 3 +- drivers/gpu/drm/drm_probe_helper.c | 45 ++++--- drivers/gpu/drm/i915/i915_debugfs.c | 4 +- drivers/gpu/drm/i915/intel_dp_mst.c | 15 +-- drivers/gpu/drm/i915/intel_pm.c | 2 +- drivers/gpu/drm/radeon/radeon_dp_mst.c | 11 +- drivers/gpu/drm/shmobile/shmob_drm_crtc.c | 2 +- include/drm/drmP.h | 1 - include/drm/drm_crtc.h | 67 ++++++---- 19 files changed, 170 insertions(+), 278 deletions(-) -- 2.1.4 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel