Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7c6455e3 authored by Al Viro's avatar Al Viro
Browse files

configfs: register_filesystem() called too early



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 988f0325
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -292,7 +292,7 @@ int __init configfs_inode_init(void)
	return bdi_init(&configfs_backing_dev_info);
}

void __exit configfs_inode_exit(void)
void configfs_inode_exit(void)
{
	bdi_destroy(&configfs_backing_dev_info);
}
+17 −19
Original line number Diff line number Diff line
@@ -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);
	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;
}