diff options
Diffstat (limited to 'arch/ia64/kernel/perfmon.c')
-rw-r--r-- | arch/ia64/kernel/perfmon.c | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/arch/ia64/kernel/perfmon.c b/arch/ia64/kernel/perfmon.c index 3fa4bc536953..5a5c22245dee 100644 --- a/arch/ia64/kernel/perfmon.c +++ b/arch/ia64/kernel/perfmon.c | |||
@@ -2380,8 +2380,8 @@ static int | |||
2380 | pfm_bad_permissions(struct task_struct *task) | 2380 | pfm_bad_permissions(struct task_struct *task) |
2381 | { | 2381 | { |
2382 | const struct cred *tcred; | 2382 | const struct cred *tcred; |
2383 | uid_t uid = current_uid(); | 2383 | kuid_t uid = current_uid(); |
2384 | gid_t gid = current_gid(); | 2384 | kgid_t gid = current_gid(); |
2385 | int ret; | 2385 | int ret; |
2386 | 2386 | ||
2387 | rcu_read_lock(); | 2387 | rcu_read_lock(); |
@@ -2389,20 +2389,20 @@ pfm_bad_permissions(struct task_struct *task) | |||
2389 | 2389 | ||
2390 | /* inspired by ptrace_attach() */ | 2390 | /* inspired by ptrace_attach() */ |
2391 | DPRINT(("cur: uid=%d gid=%d task: euid=%d suid=%d uid=%d egid=%d sgid=%d\n", | 2391 | DPRINT(("cur: uid=%d gid=%d task: euid=%d suid=%d uid=%d egid=%d sgid=%d\n", |
2392 | uid, | 2392 | from_kuid(&init_user_ns, uid), |
2393 | gid, | 2393 | from_kgid(&init_user_ns, gid), |
2394 | tcred->euid, | 2394 | from_kuid(&init_user_ns, tcred->euid), |
2395 | tcred->suid, | 2395 | from_kuid(&init_user_ns, tcred->suid), |
2396 | tcred->uid, | 2396 | from_kuid(&init_user_ns, tcred->uid), |
2397 | tcred->egid, | 2397 | from_kgid(&init_user_ns, tcred->egid), |
2398 | tcred->sgid)); | 2398 | from_kgid(&init_user_ns, tcred->sgid))); |
2399 | 2399 | ||
2400 | ret = ((uid != tcred->euid) | 2400 | ret = ((!uid_eq(uid, tcred->euid)) |
2401 | || (uid != tcred->suid) | 2401 | || (!uid_eq(uid, tcred->suid)) |
2402 | || (uid != tcred->uid) | 2402 | || (!uid_eq(uid, tcred->uid)) |
2403 | || (gid != tcred->egid) | 2403 | || (!gid_eq(gid, tcred->egid)) |
2404 | || (gid != tcred->sgid) | 2404 | || (!gid_eq(gid, tcred->sgid)) |
2405 | || (gid != tcred->gid)) && !capable(CAP_SYS_PTRACE); | 2405 | || (!gid_eq(gid, tcred->gid))) && !capable(CAP_SYS_PTRACE); |
2406 | 2406 | ||
2407 | rcu_read_unlock(); | 2407 | rcu_read_unlock(); |
2408 | return ret; | 2408 | return ret; |