public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] f2fs: remove debufs dir if debugfs_create_file() failed
@ 2013-12-02 13:16 Younger Liu
  0 siblings, 0 replies; only message in thread
From: Younger Liu @ 2013-12-02 13:16 UTC (permalink / raw)
  To: Jaegeuk Kim; +Cc: f2fs, kernel, fs-devel

From: Younger Liu <liuyiyang@hisense.com>

When debugfs_create_file() failed in f2fs_create_root_stats(),
debugfs_root should be removed.

Signed-off-by: Younger Liu <liuyiyang@hisense.com>
Cc: Younger Liu <younger.liucn@gmail.com>
Cc: Jaegeuk Kim <jaegeuk.kim@samsung.com>
---
 fs/f2fs/debug.c |   20 +++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

diff --git a/fs/f2fs/debug.c b/fs/f2fs/debug.c
index a84b0a8..d27b689 100644
--- a/fs/f2fs/debug.c
+++ b/fs/f2fs/debug.c
@@ -340,10 +340,24 @@ void f2fs_destroy_stats(struct f2fs_sb_info *sbi)
 
 void __init f2fs_create_root_stats(void)
 {
+    struct dentry *file;
+
     debugfs_root = debugfs_create_dir("f2fs", NULL);
-    if (debugfs_root)
-        debugfs_create_file("status", S_IRUGO, debugfs_root,
-                     NULL, &stat_fops);
+    if (!debugfs_root)
+        goto bail;
+
+    file = debugfs_create_file("status", S_IRUGO,
+            debugfs_root, NULL, &stat_fops);
+    if (!file)
+        goto free_debugfs_dir;
+
+    return;
+
+free_debugfs_dir:
+    debugfs_remove(debugfs_root);
+
+bail:
+    return;
 }
 
 void f2fs_destroy_root_stats(void)
-- 
1.7.9.5



^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2013-12-02 13:16 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-02 13:16 [PATCH 0/2] f2fs: remove debufs dir if debugfs_create_file() failed Younger Liu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox