[PATCH 00/14] drm_connector locking rules, v2
Daniel Vetter
daniel.vetter at ffwll.ch
Thu Jul 9 14:44:23 PDT 2015
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
More information about the dri-devel
mailing list