mtd: no need to check return value of debugfs_create functions
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 7 Nov 2019 08:51:11 +0000 (09:51 +0100)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Thu, 14 Nov 2019 09:57:38 +0000 (10:57 +0100)
When calling debugfs functions, there is no need to ever check the
return value.  The function can work or not, but the code logic should
never do something different based on this.

Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Brian Norris <computersforpeace@gmail.com>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Miquel Raynal <miquel.raynal@bootlin.com>
Cc: Richard Weinberger <richard@nod.at>
Cc: Vignesh Raghavendra <vigneshr@ti.com>
Cc: Artem Bityutskiy <dedekind1@gmail.com>
Cc: linux-mtd@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
drivers/mtd/mtdcore.c
drivers/mtd/mtdswap.c
drivers/mtd/ubi/debug.c

index 6cc7ecb..5fac435 100644 (file)
@@ -382,33 +382,21 @@ static struct dentry *dfs_dir_mtd;
 static void mtd_debugfs_populate(struct mtd_info *mtd)
 {
        struct device *dev = &mtd->dev;
-       struct dentry *root, *dent;
+       struct dentry *root;
 
        if (IS_ERR_OR_NULL(dfs_dir_mtd))
                return;
 
        root = debugfs_create_dir(dev_name(dev), dfs_dir_mtd);
-       if (IS_ERR_OR_NULL(root)) {
-               dev_dbg(dev, "won't show data in debugfs\n");
-               return;
-       }
-
        mtd->dbg.dfs_dir = root;
 
-       if (mtd->dbg.partid) {
-               dent = debugfs_create_file("partid", 0400, root, mtd,
-                                          &mtd_partid_debug_fops);
-               if (IS_ERR_OR_NULL(dent))
-                       dev_err(dev, "can't create debugfs entry for partid\n");
-       }
+       if (mtd->dbg.partid)
+               debugfs_create_file("partid", 0400, root, mtd,
+                                   &mtd_partid_debug_fops);
 
-       if (mtd->dbg.partname) {
-               dent = debugfs_create_file("partname", 0400, root, mtd,
-                                          &mtd_partname_debug_fops);
-               if (IS_ERR_OR_NULL(dent))
-                       dev_err(dev,
-                               "can't create debugfs entry for partname\n");
-       }
+       if (mtd->dbg.partname)
+               debugfs_create_file("partname", 0400, root, mtd,
+                                   &mtd_partname_debug_fops);
 }
 
 #ifndef CONFIG_MMU
index f92414e..58eefa4 100644 (file)
@@ -1257,7 +1257,6 @@ DEFINE_SHOW_ATTRIBUTE(mtdswap);
 static int mtdswap_add_debugfs(struct mtdswap_dev *d)
 {
        struct dentry *root = d->mtd->dbg.dfs_dir;
-       struct dentry *dent;
 
        if (!IS_ENABLED(CONFIG_DEBUG_FS))
                return 0;
@@ -1265,12 +1264,7 @@ static int mtdswap_add_debugfs(struct mtdswap_dev *d)
        if (IS_ERR_OR_NULL(root))
                return -1;
 
-       dent = debugfs_create_file("mtdswap_stats", S_IRUSR, root, d,
-                               &mtdswap_fops);
-       if (!dent) {
-               dev_err(d->dev, "debugfs_create_file failed\n");
-               return -1;
-       }
+       debugfs_create_file("mtdswap_stats", S_IRUSR, root, d, &mtdswap_fops);
 
        return 0;
 }
index a1dff92..0f847d5 100644 (file)
@@ -509,11 +509,9 @@ static const struct file_operations eraseblk_count_fops = {
  */
 int ubi_debugfs_init_dev(struct ubi_device *ubi)
 {
-       int err, n;
        unsigned long ubi_num = ubi->ubi_num;
-       const char *fname;
-       struct dentry *dent;
        struct ubi_debug_info *d = &ubi->dbg;
+       int n;
 
        if (!IS_ENABLED(CONFIG_DEBUG_FS))
                return 0;
@@ -522,95 +520,52 @@ int ubi_debugfs_init_dev(struct ubi_device *ubi)
                     ubi->ubi_num);
        if (n == UBI_DFS_DIR_LEN) {
                /* The array size is too small */
-               fname = UBI_DFS_DIR_NAME;
-               dent = ERR_PTR(-EINVAL);
-               goto out;
+               return -EINVAL;
        }
 
-       fname = d->dfs_dir_name;
-       dent = debugfs_create_dir(fname, dfs_rootdir);
-       if (IS_ERR_OR_NULL(dent))
-               goto out;
-       d->dfs_dir = dent;
-
-       fname = "chk_gen";
-       dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, (void *)ubi_num,
-                                  &dfs_fops);
-       if (IS_ERR_OR_NULL(dent))
-               goto out_remove;
-       d->dfs_chk_gen = dent;
-
-       fname = "chk_io";
-       dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, (void *)ubi_num,
-                                  &dfs_fops);
-       if (IS_ERR_OR_NULL(dent))
-               goto out_remove;
-       d->dfs_chk_io = dent;
-
-       fname = "chk_fastmap";
-       dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, (void *)ubi_num,
-                                  &dfs_fops);
-       if (IS_ERR_OR_NULL(dent))
-               goto out_remove;
-       d->dfs_chk_fastmap = dent;
-
-       fname = "tst_disable_bgt";
-       dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, (void *)ubi_num,
-                                  &dfs_fops);
-       if (IS_ERR_OR_NULL(dent))
-               goto out_remove;
-       d->dfs_disable_bgt = dent;
-
-       fname = "tst_emulate_bitflips";
-       dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, (void *)ubi_num,
-                                  &dfs_fops);
-       if (IS_ERR_OR_NULL(dent))
-               goto out_remove;
-       d->dfs_emulate_bitflips = dent;
-
-       fname = "tst_emulate_io_failures";
-       dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, (void *)ubi_num,
-                                  &dfs_fops);
-       if (IS_ERR_OR_NULL(dent))
-               goto out_remove;
-       d->dfs_emulate_io_failures = dent;
-
-       fname = "tst_emulate_power_cut";
-       dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, (void *)ubi_num,
-                                  &dfs_fops);
-       if (IS_ERR_OR_NULL(dent))
-               goto out_remove;
-       d->dfs_emulate_power_cut = dent;
-
-       fname = "tst_emulate_power_cut_min";
-       dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, (void *)ubi_num,
-                                  &dfs_fops);
-       if (IS_ERR_OR_NULL(dent))
-               goto out_remove;
-       d->dfs_power_cut_min = dent;
-
-       fname = "tst_emulate_power_cut_max";
-       dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, (void *)ubi_num,
-                                  &dfs_fops);
-       if (IS_ERR_OR_NULL(dent))
-               goto out_remove;
-       d->dfs_power_cut_max = dent;
-
-       fname = "detailed_erase_block_info";
-       dent = debugfs_create_file(fname, S_IRUSR, d->dfs_dir, (void *)ubi_num,
-                                  &eraseblk_count_fops);
-       if (IS_ERR_OR_NULL(dent))
-               goto out_remove;
+       d->dfs_dir = debugfs_create_dir(d->dfs_dir_name, dfs_rootdir);
 
-       return 0;
+       d->dfs_chk_gen = debugfs_create_file("chk_gen", S_IWUSR, d->dfs_dir,
+                                            (void *)ubi_num, &dfs_fops);
 
-out_remove:
-       debugfs_remove_recursive(d->dfs_dir);
-out:
-       err = dent ? PTR_ERR(dent) : -ENODEV;
-       ubi_err(ubi, "cannot create \"%s\" debugfs file or directory, error %d\n",
-               fname, err);
-       return err;
+       d->dfs_chk_io = debugfs_create_file("chk_io", S_IWUSR, d->dfs_dir,
+                                           (void *)ubi_num, &dfs_fops);
+
+       d->dfs_chk_fastmap = debugfs_create_file("chk_fastmap", S_IWUSR,
+                                                d->dfs_dir, (void *)ubi_num,
+                                                &dfs_fops);
+
+       d->dfs_disable_bgt = debugfs_create_file("tst_disable_bgt", S_IWUSR,
+                                                d->dfs_dir, (void *)ubi_num,
+                                                &dfs_fops);
+
+       d->dfs_emulate_bitflips = debugfs_create_file("tst_emulate_bitflips",
+                                                     S_IWUSR, d->dfs_dir,
+                                                     (void *)ubi_num,
+                                                     &dfs_fops);
+
+       d->dfs_emulate_io_failures = debugfs_create_file("tst_emulate_io_failures",
+                                                        S_IWUSR, d->dfs_dir,
+                                                        (void *)ubi_num,
+                                                        &dfs_fops);
+
+       d->dfs_emulate_power_cut = debugfs_create_file("tst_emulate_power_cut",
+                                                      S_IWUSR, d->dfs_dir,
+                                                      (void *)ubi_num,
+                                                      &dfs_fops);
+
+       d->dfs_power_cut_min = debugfs_create_file("tst_emulate_power_cut_min",
+                                                  S_IWUSR, d->dfs_dir,
+                                                  (void *)ubi_num, &dfs_fops);
+
+       d->dfs_power_cut_max = debugfs_create_file("tst_emulate_power_cut_max",
+                                                  S_IWUSR, d->dfs_dir,
+                                                  (void *)ubi_num, &dfs_fops);
+
+       debugfs_create_file("detailed_erase_block_info", S_IRUSR, d->dfs_dir,
+                           (void *)ubi_num, &eraseblk_count_fops);
+
+       return 0;
 }
 
 /**