kobject_put(&tlmi_priv.setting[i]->kobj);
                }
        }
+       sysfs_remove_file(&tlmi_priv.attribute_kset->kobj, &pending_reboot.attr);
        kset_unregister(tlmi_priv.attribute_kset);
 
        /* Authentication structures */
        sysfs_remove_group(&tlmi_priv.pwd_power->kobj, &auth_attr_group);
        kobject_put(&tlmi_priv.pwd_power->kobj);
        kset_unregister(tlmi_priv.authentication_kset);
-       sysfs_remove_file(&tlmi_priv.class_dev->kobj, &pending_reboot.attr);
 }
 
 static int tlmi_sysfs_init(void)
                        goto fail_create_attr;
        }
 
+       ret = sysfs_create_file(&tlmi_priv.attribute_kset->kobj, &pending_reboot.attr);
+       if (ret)
+               goto fail_create_attr;
+
        /* Create authentication entries */
        tlmi_priv.authentication_kset = kset_create_and_add("authentication", NULL,
                                                                &tlmi_priv.class_dev->kobj);
        if (ret)
                goto fail_create_attr;
 
-       /* Create global sysfs files */
-       ret = sysfs_create_file(&tlmi_priv.class_dev->kobj, &pending_reboot.attr);
-       if (ret)
-               goto fail_create_attr;
-
        return ret;
 
 fail_create_attr: