kset: convert ecryptfs to use kset_create Dynamically create the kset instead of declaring it statically. Cc: Kay Sievers <kay.sievers@vrfy.org> Cc: Mike Halcrow <mhalcrow@us.ibm.com> Cc: Phillip Hellewell <phillip@hellewell.homeip.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
diff --git a/fs/ecryptfs/main.c b/fs/ecryptfs/main.c index fe2f44f..4750d82 100644 --- a/fs/ecryptfs/main.c +++ b/fs/ecryptfs/main.c
@@ -734,7 +734,7 @@ return 0; } -static decl_subsys(ecryptfs, NULL); +static struct kset *ecryptfs_kset; static ssize_t version_show(struct kset *kset, char *buff) { @@ -798,18 +798,17 @@ { int rc; - ecryptfs_subsys.kobj.kset = &fs_subsys; - rc = subsystem_register(&ecryptfs_subsys); - if (rc) { - printk(KERN_ERR - "Unable to register ecryptfs sysfs subsystem\n"); + ecryptfs_kset = kset_create_and_add("ecryptfs", NULL, &fs_subsys.kobj); + if (!ecryptfs_kset) { + printk(KERN_ERR "Unable to create ecryptfs kset\n"); + rc = -ENOMEM; goto out; } - rc = sysfs_create_group(&ecryptfs_subsys.kobj, &attr_group); + rc = sysfs_create_group(&ecryptfs_kset->kobj, &attr_group); if (rc) { printk(KERN_ERR "Unable to create ecryptfs version attributes\n"); - subsystem_unregister(&ecryptfs_subsys); + kset_unregister(ecryptfs_kset); } out: return rc; @@ -817,8 +816,8 @@ static void do_sysfs_unregistration(void) { - sysfs_remove_group(&ecryptfs_subsys.kobj, &attr_group); - subsystem_unregister(&ecryptfs_subsys); + sysfs_remove_group(&ecryptfs_kset->kobj, &attr_group); + kset_unregister(ecryptfs_kset); } static int __init ecryptfs_init(void)