drm/cma-helper: Fix locking in drm_fb_cma_debugfs_show
[linux-2.6-block.git] / drivers / gpu / drm / drm_fb_cma_helper.c
index 5c1aca443e54f851cf7abeb9679962f3ec96ef29..46c4e6ee1cb1aee44cdd6757ee3e73d799841a1a 100644 (file)
@@ -209,23 +209,11 @@ int drm_fb_cma_debugfs_show(struct seq_file *m, void *arg)
        struct drm_info_node *node = (struct drm_info_node *) m->private;
        struct drm_device *dev = node->minor->dev;
        struct drm_framebuffer *fb;
-       int ret;
-
-       ret = mutex_lock_interruptible(&dev->mode_config.mutex);
-       if (ret)
-               return ret;
-
-       ret = mutex_lock_interruptible(&dev->struct_mutex);
-       if (ret) {
-               mutex_unlock(&dev->mode_config.mutex);
-               return ret;
-       }
 
+       mutex_lock(&dev->mode_config.fb_lock);
        list_for_each_entry(fb, &dev->mode_config.fb_list, head)
                drm_fb_cma_describe(fb, m);
-
-       mutex_unlock(&dev->struct_mutex);
-       mutex_unlock(&dev->mode_config.mutex);
+       mutex_unlock(&dev->mode_config.fb_lock);
 
        return 0;
 }