Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu>
dentry = __odf_create_dir(odf_root, ODF_NS);
if (IS_ERR(dentry)) {
err = PTR_ERR(dentry);
- dentry = NULL;
goto out;
}
dput(dentry);
dentry = __odf_create_dir(odf_root, ODF_IC);
if (IS_ERR(dentry)) {
err = PTR_ERR(dentry);
- dentry = NULL;
goto out;
}
dput(dentry);
dentry = __odf_create_dir(odf_root, ODF_RC);
if (IS_ERR(dentry)) {
err = PTR_ERR(dentry);
- dentry = NULL;
goto out;
}
dput(dentry);
dentry = __odf_create_dir(odf_root, ODF_SR);
if (IS_ERR(dentry)) {
err = PTR_ERR(dentry);
- dentry = NULL;
goto out;
}
dput(dentry);
dentry = lookup_one_len(ODF_WH, odf_root, sizeof(ODF_WH) - 1);
if (IS_ERR(dentry)) {
err = PTR_ERR(dentry);
- dentry = NULL;
goto out;
}
if (unlikely(dentry->d_inode)) {
release_lower_nd(&lower_nd, err);
out:
- dput(dentry);
+ if (!err)
+ dput(dentry);
return err;
}