summaryrefslogtreecommitdiffstats
path: root/include/drm/drm_crtc.h
diff options
context:
space:
mode:
authorJesse Barnes <jbarnes@virtuousgeek.org>2009-01-19 17:21:45 +1000
committerDave Airlie <airlied@redhat.com>2009-01-22 17:53:05 +1000
commitad2563c2e42fc67b0976aeb70e9f3faf1c1196e8 (patch)
tree5e4dc7f4d882143166d9aa5525f5f526d79056e7 /include/drm/drm_crtc.h
parentc1ff85d97708550e634fb6fa099c463db90fc40d (diff)
downloadlinux-ad2563c2e42fc67b0976aeb70e9f3faf1c1196e8.tar.gz
linux-ad2563c2e42fc67b0976aeb70e9f3faf1c1196e8.tar.bz2
linux-ad2563c2e42fc67b0976aeb70e9f3faf1c1196e8.zip
drm: create mode_config idr lock
Create a separate mode_config IDR lock for simplicity. The core DRM config structures (connector, mode, etc. lists) are still protected by the mode_config mutex, but the CRTC IDR (used for the various identifier IDs) is now protected by the mode_config idr_mutex. Simplifies the locking a bit and removes a warning. All objects are protected by the config mutex, we may in the future, split the object further to have reference counts. Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'include/drm/drm_crtc.h')
-rw-r--r--include/drm/drm_crtc.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
index 47809ac94bc3..d54de24bf371 100644
--- a/include/drm/drm_crtc.h
+++ b/include/drm/drm_crtc.h
@@ -528,7 +528,8 @@ struct drm_mode_group {
*
*/
struct drm_mode_config {
- struct mutex mutex; /* protects configuration and IDR */
+ struct mutex mutex; /* protects configuration (mode lists etc.) */
+ struct mutex idr_mutex; /* for IDR management */
struct idr crtc_idr; /* use this idr for all IDs, fb, crtc, connector, modes - just makes life easier */
/* this is limited to one for now */
int num_fb;