ovl: clean up error handling in ovl_get_tmpfile()
If security_inode_copy_up() fails, it should not set new_creds, so no need for the cleanup (which would've Oops-ed anyway, due to old_creds being NULL). Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
This commit is contained in:
parent
babf4770be
commit
1f244dc521
|
@ -477,9 +477,8 @@ static struct dentry *ovl_get_tmpfile(struct ovl_copy_up_ctx *c)
|
||||||
};
|
};
|
||||||
|
|
||||||
err = security_inode_copy_up(c->dentry, &new_creds);
|
err = security_inode_copy_up(c->dentry, &new_creds);
|
||||||
temp = ERR_PTR(err);
|
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
goto out;
|
return ERR_PTR(err);
|
||||||
|
|
||||||
if (new_creds)
|
if (new_creds)
|
||||||
old_creds = override_creds(new_creds);
|
old_creds = override_creds(new_creds);
|
||||||
|
@ -488,7 +487,7 @@ static struct dentry *ovl_get_tmpfile(struct ovl_copy_up_ctx *c)
|
||||||
temp = ovl_do_tmpfile(c->workdir, c->stat.mode);
|
temp = ovl_do_tmpfile(c->workdir, c->stat.mode);
|
||||||
else
|
else
|
||||||
temp = ovl_create_temp(c->workdir, &cattr);
|
temp = ovl_create_temp(c->workdir, &cattr);
|
||||||
out:
|
|
||||||
if (new_creds) {
|
if (new_creds) {
|
||||||
revert_creds(old_creds);
|
revert_creds(old_creds);
|
||||||
put_cred(new_creds);
|
put_cred(new_creds);
|
||||||
|
|
Loading…
Reference in New Issue