summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYang Yingliang <yangyingliang@huawei.com>2021-05-26 22:38:05 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-07-14 16:56:55 +0200
commit0855952ed4f1a6861fbb0e5d684efd447d7347c9 (patch)
tree89d98012a21774047f347538c44deed791ece6cb
parentce04375e2d9b9e84d7d1e7b79ac29071e075c5d5 (diff)
downloadlinux-stable-0855952ed4f1a6861fbb0e5d684efd447d7347c9.tar.gz
linux-stable-0855952ed4f1a6861fbb0e5d684efd447d7347c9.tar.bz2
linux-stable-0855952ed4f1a6861fbb0e5d684efd447d7347c9.zip
cred: add missing return error code when set_cred_ucounts() failed
commit 5e6b8a50a7cec5686ee2c4bda1d49899c79a7eae upstream. If set_cred_ucounts() failed, we need return the error code. Fixes: 905ae01c4ae2 ("Add a reference to ucounts for each cred") Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: Yang Yingliang <yangyingliang@huawei.com> Link: https://lkml.kernel.org/r/20210526143805.2549649-1-yangyingliang@huawei.com Reviewed-by: Alexey Gladkov <legion@kernel.org> Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--kernel/cred.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/cred.c b/kernel/cred.c
index 58a8a9e24347..098213d4a39c 100644
--- a/kernel/cred.c
+++ b/kernel/cred.c
@@ -372,7 +372,8 @@ int copy_creds(struct task_struct *p, unsigned long clone_flags)
ret = create_user_ns(new);
if (ret < 0)
goto error_put;
- if (set_cred_ucounts(new) < 0)
+ ret = set_cred_ucounts(new);
+ if (ret < 0)
goto error_put;
}