From a29788e58a187d0d3354e3d33a326b9fbf273251 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Wed, 11 Aug 2021 23:16:27 +0200 Subject: [PATCH] Kernel: Don't record sys$perf_event() if profiling is not enabled If you want to record perf events, just enable profiling. This allows us to add random perf events to programs without littering the file system with perfcore files. --- Kernel/Syscalls/perf_event.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/Kernel/Syscalls/perf_event.cpp b/Kernel/Syscalls/perf_event.cpp index 09b9db6ee02..34a38976418 100644 --- a/Kernel/Syscalls/perf_event.cpp +++ b/Kernel/Syscalls/perf_event.cpp @@ -12,12 +12,9 @@ namespace Kernel { KResultOr Process::sys$perf_event(int type, FlatPtr arg1, FlatPtr arg2) { VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this) - auto events_buffer = current_perf_events_buffer(); - if (!events_buffer) { - if (!create_perf_events_buffer_if_needed()) - return ENOMEM; - events_buffer = perf_events(); - } + auto* events_buffer = current_perf_events_buffer(); + if (!events_buffer) + return KSuccess; return events_buffer->append(type, arg1, arg2, nullptr); }