drm/msm: Remove drm_debugfs_remove_files() calls
authorNoralf Trønnes <noralf@tronnes.org>
Thu, 26 Jan 2017 22:56:11 +0000 (23:56 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 1 Mar 2017 15:09:52 +0000 (16:09 +0100)
drm_debugfs_cleanup() now removes all minor->debugfs_list entries
automatically, so it's not necessary to call
drm_debugfs_remove_files(). Additionally it uses
debugfs_remove_recursive() to clean up the debugfs files, so no need
to do that.

Cc: robdclark@gmail.com
Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20170126225621.12314-10-noralf@tronnes.org
drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
drivers/gpu/drm/msm/msm_debugfs.c
drivers/gpu/drm/msm/msm_perf.c
drivers/gpu/drm/msm/msm_rd.c

index 3eb0749..41ccd2a 100644 (file)
@@ -214,12 +214,6 @@ static int mdp5_kms_debugfs_init(struct msm_kms *kms, struct drm_minor *minor)
 
        return 0;
 }
-
-static void mdp5_kms_debugfs_cleanup(struct msm_kms *kms, struct drm_minor *minor)
-{
-       drm_debugfs_remove_files(mdp5_debugfs_list,
-                       ARRAY_SIZE(mdp5_debugfs_list), minor);
-}
 #endif
 
 static const struct mdp_kms_funcs kms_funcs = {
@@ -242,7 +236,6 @@ static const struct mdp_kms_funcs kms_funcs = {
                .destroy         = mdp5_kms_destroy,
 #ifdef CONFIG_DEBUG_FS
                .debugfs_init    = mdp5_kms_debugfs_init,
-               .debugfs_cleanup = mdp5_kms_debugfs_cleanup,
 #endif
        },
        .set_irqmask         = mdp5_set_irqmask,
index 387f061..75609a1 100644 (file)
@@ -170,8 +170,6 @@ void msm_debugfs_cleanup(struct drm_minor *minor)
        struct drm_device *dev = minor->dev;
        struct msm_drm_private *priv = dev->dev_private;
 
-       drm_debugfs_remove_files(msm_debugfs_list,
-                       ARRAY_SIZE(msm_debugfs_list), minor);
        if (!priv)
                return;
 
index 1627294..fc5a948 100644 (file)
@@ -41,9 +41,6 @@ struct msm_perf_state {
        int buftot, bufpos;
 
        unsigned long next_jiffies;
-
-       struct dentry *ent;
-       struct drm_info_node *node;
 };
 
 #define SAMPLE_TIME (HZ/4)
@@ -208,6 +205,7 @@ int msm_perf_debugfs_init(struct drm_minor *minor)
 {
        struct msm_drm_private *priv = minor->dev->dev_private;
        struct msm_perf_state *perf;
+       struct dentry *ent;
 
        /* only create on first minor: */
        if (priv->perf)
@@ -222,26 +220,14 @@ int msm_perf_debugfs_init(struct drm_minor *minor)
        mutex_init(&perf->read_lock);
        priv->perf = perf;
 
-       perf->node = kzalloc(sizeof(*perf->node), GFP_KERNEL);
-       if (!perf->node)
-               goto fail;
-
-       perf->ent = debugfs_create_file("perf", S_IFREG | S_IRUGO,
+       ent = debugfs_create_file("perf", S_IFREG | S_IRUGO,
                        minor->debugfs_root, perf, &perf_debugfs_fops);
-       if (!perf->ent) {
+       if (!ent) {
                DRM_ERROR("Cannot create /sys/kernel/debug/dri/%pd/perf\n",
                                minor->debugfs_root);
                goto fail;
        }
 
-       perf->node->minor = minor;
-       perf->node->dent  = perf->ent;
-       perf->node->info_ent = NULL;
-
-       mutex_lock(&minor->debugfs_lock);
-       list_add(&perf->node->list, &minor->debugfs_list);
-       mutex_unlock(&minor->debugfs_lock);
-
        return 0;
 
 fail:
@@ -259,15 +245,6 @@ void msm_perf_debugfs_cleanup(struct drm_minor *minor)
 
        priv->perf = NULL;
 
-       debugfs_remove(perf->ent);
-
-       if (perf->node) {
-               mutex_lock(&minor->debugfs_lock);
-               list_del(&perf->node->list);
-               mutex_unlock(&minor->debugfs_lock);
-               kfree(perf->node);
-       }
-
        mutex_destroy(&perf->read_lock);
 
        kfree(perf);
index 6607456..ab0b39f 100644 (file)
@@ -84,9 +84,6 @@ struct msm_rd_state {
 
        bool open;
 
-       struct dentry *ent;
-       struct drm_info_node *node;
-
        /* current submit to read out: */
        struct msm_gem_submit *submit;
 
@@ -219,6 +216,7 @@ int msm_rd_debugfs_init(struct drm_minor *minor)
 {
        struct msm_drm_private *priv = minor->dev->dev_private;
        struct msm_rd_state *rd;
+       struct dentry *ent;
 
        /* only create on first minor: */
        if (priv->rd)
@@ -236,26 +234,14 @@ int msm_rd_debugfs_init(struct drm_minor *minor)
 
        init_waitqueue_head(&rd->fifo_event);
 
-       rd->node = kzalloc(sizeof(*rd->node), GFP_KERNEL);
-       if (!rd->node)
-               goto fail;
-
-       rd->ent = debugfs_create_file("rd", S_IFREG | S_IRUGO,
+       ent = debugfs_create_file("rd", S_IFREG | S_IRUGO,
                        minor->debugfs_root, rd, &rd_debugfs_fops);
-       if (!rd->ent) {
+       if (!ent) {
                DRM_ERROR("Cannot create /sys/kernel/debug/dri/%pd/rd\n",
                                minor->debugfs_root);
                goto fail;
        }
 
-       rd->node->minor = minor;
-       rd->node->dent  = rd->ent;
-       rd->node->info_ent = NULL;
-
-       mutex_lock(&minor->debugfs_lock);
-       list_add(&rd->node->list, &minor->debugfs_list);
-       mutex_unlock(&minor->debugfs_lock);
-
        return 0;
 
 fail:
@@ -272,18 +258,7 @@ void msm_rd_debugfs_cleanup(struct drm_minor *minor)
                return;
 
        priv->rd = NULL;
-
-       debugfs_remove(rd->ent);
-
-       if (rd->node) {
-               mutex_lock(&minor->debugfs_lock);
-               list_del(&rd->node->list);
-               mutex_unlock(&minor->debugfs_lock);
-               kfree(rd->node);
-       }
-
        mutex_destroy(&rd->read_lock);
-
        kfree(rd);
 }