skge: default WOL should be magic only (rev2)
[powerpc.git] / fs / configfs / dir.c
index 34750d5..5e6e37e 100644 (file)
@@ -1141,25 +1141,22 @@ int configfs_register_subsystem(struct configfs_subsystem *subsys)
 
        err = -ENOMEM;
        dentry = d_alloc(configfs_sb->s_root, &name);
-       if (!dentry)
-               goto out_release;
-
-       d_add(dentry, NULL);
+       if (dentry) {
+               d_add(dentry, NULL);
 
-       err = configfs_attach_group(sd->s_element, &group->cg_item,
-                                   dentry);
-       if (!err)
-               dentry = NULL;
-       else
-               d_delete(dentry);
+               err = configfs_attach_group(sd->s_element, &group->cg_item,
+                                           dentry);
+               if (err) {
+                       d_delete(dentry);
+                       dput(dentry);
+               }
+       }
 
        mutex_unlock(&configfs_sb->s_root->d_inode->i_mutex);
 
-       if (dentry) {
-           dput(dentry);
-out_release:
-           unlink_group(group);
-           configfs_release_fs();
+       if (err) {
+               unlink_group(group);
+               configfs_release_fs();
        }
 
        return err;