diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2020-08-15 10:34:24 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2020-08-15 10:34:24 -0700 |
commit | 7f5faaaa5909bb0b26dcd309424da14bdf0c7e93 (patch) | |
tree | 3e397a7a396e55dd9a8d930f4ae661df7d5cb5cc /kernel/events/core.c | |
parent | eb1319af4119c4936e02c879295e9fd4d50bbe3a (diff) | |
parent | bcfd218b66790243ef303c1b35ce59f786ded225 (diff) | |
download | linux-stable-7f5faaaa5909bb0b26dcd309424da14bdf0c7e93.tar.gz linux-stable-7f5faaaa5909bb0b26dcd309424da14bdf0c7e93.tar.bz2 linux-stable-7f5faaaa5909bb0b26dcd309424da14bdf0c7e93.zip |
Merge tag 'perf-urgent-2020-08-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull perf fixes from Ingo Molnar:
"Misc fixes, an expansion of perf syscall access to CAP_PERFMON
privileged tools, plus a RAPL HW-enablement for Intel SPR platforms"
* tag 'perf-urgent-2020-08-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
perf/x86/rapl: Add support for Intel SPR platform
perf/x86/rapl: Support multiple RAPL unit quirks
perf/x86/rapl: Fix missing psys sysfs attributes
hw_breakpoint: Remove unused __register_perf_hw_breakpoint() declaration
kprobes: Remove show_registers() function prototype
perf/core: Take over CAP_SYS_PTRACE creds to CAP_PERFMON capability
Diffstat (limited to 'kernel/events/core.c')
-rw-r--r-- | kernel/events/core.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/events/core.c b/kernel/events/core.c index 6961333ebad5..5bfe8e3c6e44 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -11706,7 +11706,7 @@ SYSCALL_DEFINE5(perf_event_open, goto err_task; /* - * Reuse ptrace permission checks for now. + * Preserve ptrace permission check for backwards compatibility. * * We must hold exec_update_mutex across this and any potential * perf_install_in_context() call for this new event to @@ -11714,7 +11714,7 @@ SYSCALL_DEFINE5(perf_event_open, * perf_event_exit_task() that could imply). */ err = -EACCES; - if (!ptrace_may_access(task, PTRACE_MODE_READ_REALCREDS)) + if (!perfmon_capable() && !ptrace_may_access(task, PTRACE_MODE_READ_REALCREDS)) goto err_cred; } |