lower_parent_dentry = lock_parent(lower_dentry);
if (IS_ERR(lower_parent_dentry)) {
err = PTR_ERR(lower_parent_dentry);
- goto out;
+ goto out_unlock;
}
err = init_lower_nd(&lower_nd, LOOKUP_CREATE);
if (unlikely(err < 0))
- goto out;
+ goto out_unlock;
err = vfs_create(lower_parent_dentry->d_inode, lower_dentry, mode,
&lower_nd);
release_lower_nd(&lower_nd, err);
}
}
+out_unlock:
unlock_dir(lower_parent_dentry);
-
out:
if (!err) {
unionfs_postcopyup_setmnt(dentry);
lower_parent_dentry = lock_parent(lower_dentry);
if (IS_ERR(lower_parent_dentry)) {
err = PTR_ERR(lower_parent_dentry);
- goto out;
+ goto out_unlock;
}
mode = S_IALLUGO;
}
}
+out_unlock:
unlock_dir(lower_parent_dentry);
-
out:
dput(wh_dentry);
kfree(name);
lower_parent_dentry = lock_parent(lower_dentry);
if (IS_ERR(lower_parent_dentry)) {
err = PTR_ERR(lower_parent_dentry);
- goto out;
+ goto out_unlock;
}
err = vfs_mknod(lower_parent_dentry->d_inode, lower_dentry, mode, dev);
}
}
+out_unlock:
unlock_dir(lower_parent_dentry);
-
out:
dput(wh_dentry);
kfree(name);