diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2013-09-07 10:19:55 +0200 |
---|---|---|
committer | Heiko Carstens <heiko.carstens@de.ibm.com> | 2013-09-07 11:58:21 +0200 |
commit | 2ec7f4aec4d459ef443151ecc875bfbb3a2788f8 (patch) | |
tree | 51511f1e1a0b2c18ef8651bc5bcac8f5c5f037ec /arch/s390/kernel/compat_linux.c | |
parent | 7d6c3b492f7fc1b0393b03ec6582a80c3a68bc42 (diff) | |
download | linux-stable-2ec7f4aec4d459ef443151ecc875bfbb3a2788f8.tar.gz linux-stable-2ec7f4aec4d459ef443151ecc875bfbb3a2788f8.tar.bz2 linux-stable-2ec7f4aec4d459ef443151ecc875bfbb3a2788f8.zip |
s390/compat,uid16: use current_cred()
86a264ab "CRED: Wrap current->cred and a few other accessors" converted
all uses of current->cred into current_cred() but left s390 alone.
So let's convert s390 finally as well, only five years later.
This way we also get rid of a sparse warning which complains about a
possible invalid rcu dereference which however is a false positive.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/compat_linux.c')
-rw-r--r-- | arch/s390/kernel/compat_linux.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/arch/s390/kernel/compat_linux.c b/arch/s390/kernel/compat_linux.c index 8b6e4f5288a2..1f1b8c70ab97 100644 --- a/arch/s390/kernel/compat_linux.c +++ b/arch/s390/kernel/compat_linux.c @@ -221,25 +221,26 @@ static int groups16_from_user(struct group_info *group_info, u16 __user *groupli asmlinkage long sys32_getgroups16(int gidsetsize, u16 __user *grouplist) { + const struct cred *cred = current_cred(); int i; if (gidsetsize < 0) return -EINVAL; - get_group_info(current->cred->group_info); - i = current->cred->group_info->ngroups; + get_group_info(cred->group_info); + i = cred->group_info->ngroups; if (gidsetsize) { if (i > gidsetsize) { i = -EINVAL; goto out; } - if (groups16_to_user(grouplist, current->cred->group_info)) { + if (groups16_to_user(grouplist, cred->group_info)) { i = -EFAULT; goto out; } } out: - put_group_info(current->cred->group_info); + put_group_info(cred->group_info); return i; } |