diff options
| author | Florian Tobias Schandinat <FlorianSchandinat@gmx.de> | 2011-12-17 22:00:49 +0000 |
|---|---|---|
| committer | Florian Tobias Schandinat <FlorianSchandinat@gmx.de> | 2011-12-17 22:00:49 +0000 |
| commit | a4581b35e1bc80becf240238bc787a5ec2727db0 (patch) | |
| tree | 34cbf36101639403a766e74deb36e7015d871b39 /fs/configfs/mount.c | |
| parent | f940b88d3a57594289455ea99a93a8ddc5c4af06 (diff) | |
| parent | 384703b8e6cd4c8ef08512e596024e028c91c339 (diff) | |
| download | linux-next-a4581b35e1bc80becf240238bc787a5ec2727db0.tar.gz linux-next-a4581b35e1bc80becf240238bc787a5ec2727db0.zip | |
Merge commit 'v3.2-rc6' into fbdev-next
Diffstat (limited to 'fs/configfs/mount.c')
| -rw-r--r-- | fs/configfs/mount.c | 36 |
1 files changed, 17 insertions, 19 deletions
diff --git a/fs/configfs/mount.c b/fs/configfs/mount.c index ecc62178beda..276e15cafd58 100644 --- a/fs/configfs/mount.c +++ b/fs/configfs/mount.c @@ -143,28 +143,26 @@ static int __init configfs_init(void) goto out; config_kobj = kobject_create_and_add("config", kernel_kobj); - if (!config_kobj) { - kmem_cache_destroy(configfs_dir_cachep); - configfs_dir_cachep = NULL; - goto out; - } + if (!config_kobj) + goto out2; + + err = configfs_inode_init(); + if (err) + goto out3; err = register_filesystem(&configfs_fs_type); - if (err) { - printk(KERN_ERR "configfs: Unable to register filesystem!\n"); - kobject_put(config_kobj); - kmem_cache_destroy(configfs_dir_cachep); - configfs_dir_cachep = NULL; - goto out; - } + if (err) + goto out4; - err = configfs_inode_init(); - if (err) { - unregister_filesystem(&configfs_fs_type); - kobject_put(config_kobj); - kmem_cache_destroy(configfs_dir_cachep); - configfs_dir_cachep = NULL; - } + return 0; +out4: + printk(KERN_ERR "configfs: Unable to register filesystem!\n"); + configfs_inode_exit(); +out3: + kobject_put(config_kobj); +out2: + kmem_cache_destroy(configfs_dir_cachep); + configfs_dir_cachep = NULL; out: return err; } |
