From: Miklos Szeredi Date: Fri, 26 Oct 2018 21:34:39 +0000 (+0200) Subject: ovl: clean up error handling in ovl_get_tmpfile() X-Git-Tag: rel_imx_5.10.35_2.0.0-somdevices.0~5988^2~11 X-Git-Url: https://git.somdevices.com/?a=commitdiff_plain;h=1f244dc5213960f76e7463bbb5719c331045bbc9;p=linux.git 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 --- diff --git a/fs/overlayfs/copy_up.c b/fs/overlayfs/copy_up.c index 1cc797a08a5b..989782a0c0c9 100644 --- a/fs/overlayfs/copy_up.c +++ b/fs/overlayfs/copy_up.c @@ -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); - temp = ERR_PTR(err); if (err < 0) - goto out; + return ERR_PTR(err); if (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); else temp = ovl_create_temp(c->workdir, &cattr); -out: + if (new_creds) { revert_creds(old_creds); put_cred(new_creds);