From: Mathieu Desnoyers <[EMAIL PROTECTED]>

Fix error handling of file and directory creation in DebugFS.

The error path should release the file system because no _remove will be called
for this erroneous creation.

Signed-off-by: Mathieu Desnoyers <[EMAIL PROTECTED]>
Signed-off-by: Greg Kroah-Hartman <[EMAIL PROTECTED]>
---
 fs/debugfs/inode.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/fs/debugfs/inode.c b/fs/debugfs/inode.c
index 05d1a9c..d6c5fb5 100644
--- a/fs/debugfs/inode.c
+++ b/fs/debugfs/inode.c
@@ -206,13 +206,15 @@ struct dentry *debugfs_create_file(const char *name, 
mode_t mode,
 
        pr_debug("debugfs: creating file '%s'\n",name);
 
-       error = simple_pin_fs(&debug_fs_type, &debugfs_mount, 
&debugfs_mount_count);
+       error = simple_pin_fs(&debug_fs_type, &debugfs_mount,
+                             &debugfs_mount_count);
        if (error)
                goto exit;
 
        error = debugfs_create_by_name(name, mode, parent, &dentry);
        if (error) {
                dentry = NULL;
+               simple_release_fs(&debugfs_mount, &debugfs_mount_count);
                goto exit;
        }
 
-- 
1.4.4.2

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to