summaryrefslogtreecommitdiff
path: root/Userland/Utilities/profile.cpp
AgeCommit message (Collapse)Author
2021-08-12profile: Always enable PERF_EVENT_SIGNPOSTAndreas Kling
2021-08-10Kernel: Add syscall performance event typeJean-Baptiste Boric
This allows tracing the syscalls made by a thread through the kernel's performance event framework, which is similar in principle to strace. Currently, this merely logs a stack backtrace to the current thread's performance event buffer whenever a syscall is made, if profiling is enabled. Future improvements could include tracing the arguments and the return value, for example.
2021-08-01Utilities: Remove unused header includesBrian Gianforcaro
2021-06-08LibCore: Support fine-grained failure behavior for ArgsParserJelle Raaijmakers
2021-06-01Userland: Replace most printf-style APIs with AK::Format APIs :^)Linus Groh
2021-05-19Kernel: Generate page fault events from the kernel profilerBrian Gianforcaro
Hook the kernel page fault handler and capture page fault events when the fault has a current thread attached in TLS. We capture the eip and ebp so we can unwind the stack and locate which pieces of code are generating the most page faults. Co-authored-by: Gunnar Beutner <gbeutner@serenityos.org>
2021-05-19Kernel: Add support for profiling kmalloc()/kfree()Gunnar Beutner
2021-05-19Kernel+LibC: Add support for filtering profiling eventsGunnar Beutner
This adds the -t command-line argument for the profile tool. Using this argument you can filter which event types you want in your profile.
2021-04-22Everything: Move to SPDX license identifiers in all files.Brian Gianforcaro
SPDX License Identifiers are a more compact / standardized way of representing file license information. See: https://spdx.dev/resources/use/#identifiers This was done with the `ambr` search and replace tool. ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt *
2021-04-19profile: Expose the ability to free the kernel profiling buffer.Brian Gianforcaro
2021-04-19profile: Add an option to wait for user input to disable profiling.Brian Gianforcaro
Often you want to enable and then disable profiling after a period of time. To make this slightly more ergonomic, add an option to wait for user input after enabling profiling, this will disable profiling on exit after the key press.
2021-03-21profile: Add -a option as an alias for "-p -1" (all processes)Andreas Kling
2021-01-12Userland: Move command-line utilities to Userland/Utilities/Andreas Kling