ladybird/Kernel
Andreas Kling c10e0adaca Kernel: Move perf event backtrace capture out of Thread class
There's no need for this to be generic and support running from an
arbitrary thread context. Perf events are always generated from within
the thread being profiled, so take advantage of that to simplify the
code. Also use Vector capacity to avoid heap allocations.
2021-02-03 11:53:05 +01:00
..
ACPI Meta: Split debug defines into multiple headers. 2021-01-26 21:20:00 +01:00
API Kernel: Add a way to specify which memory regions can make syscalls 2021-02-02 20:13:44 +01:00
Arch Kernel: Limit the size of stack traces 2021-02-02 18:58:26 +01:00
Devices Base: Rename some keymaps to use xx-xx format where appropriate 2021-02-02 16:53:11 +01:00
FileSystem Kernel: Check for off_t overflow in FileDescription::read/write 2021-02-03 10:54:35 +01:00
Heap Meta: Split debug defines into multiple headers. 2021-01-26 21:20:00 +01:00
Interrupts Kernel: Use the CPU# as logical apic id 2021-01-27 22:48:41 +01:00
Modules Kernel: Module symbol declarations for type-checking 2020-08-12 20:40:59 +02:00
Net Kernel: Use KResult a bit more in the IPv4 networking code 2021-01-31 12:13:16 +01:00
PCI Kernel: Fix PCI bridge enumeration 2021-01-31 19:06:40 +01:00
Storage Kernel: Restore IDE PIO functionality 2021-02-03 10:18:16 +01:00
Syscalls Kernel: Don't allow sys$msyscall() on non-mmap regions 2021-02-02 20:16:13 +01:00
Tasks AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Time Kernel: Make Processor::id a static function 2021-01-27 21:12:24 +01:00
TTY Meta: Split debug defines into multiple headers. 2021-01-26 21:20:00 +01:00
VM Everywhere: Remove some bitrotted "#if 0" blocks 2021-02-03 11:17:47 +01:00
.gitignore Meta: Expect sync-local.sh script at repository root 2021-01-30 09:18:46 +01:00
Assertions.h Everywhere: Switch from (void) to [[maybe_unused]] (#4473) 2020-12-21 00:09:48 +01:00
CMakeLists.txt Kernel: Introduce the MemoryDevice 2021-02-01 17:13:23 +01:00
CMOS.cpp Kernel: Absorb LibBareMetal back into the kernel 2020-05-16 12:00:04 +02:00
CMOS.h Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
CommandLine.cpp Meta+Kernel: Make clang-format-10 clean 2020-09-25 21:18:17 +02:00
CommandLine.h Kernel: Copy command line to a safe place 2020-08-25 09:48:48 +02:00
Console.cpp Kernel+LibC: Turn errno codes into a strongly typed enum 2021-01-20 23:20:02 +01:00
Console.h Kernel: Make device generate their own names 2021-01-22 22:17:39 +01:00
CoreDump.cpp Kernel: Generate coredump backtraces from "threads for coredump" list 2021-01-28 08:41:18 +01:00
CoreDump.h Kernel: Embed a Metadata notes entry in coredumps 2020-12-30 16:28:27 +01:00
Debug.h.in Meta: Split debug defines into multiple headers. 2021-01-26 21:20:00 +01:00
DMI.cpp Kernel: Set file size for smbios_entry_point and DMI blobs in ProcFS 2021-02-01 17:13:23 +01:00
DMI.h Kernel: Set file size for smbios_entry_point and DMI blobs in ProcFS 2021-02-01 17:13:23 +01:00
DoubleBuffer.cpp Kernel: Merge PurgeableVMObject into AnonymousVMObject 2021-01-01 23:43:44 +01:00
DoubleBuffer.h Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
Forward.h Kernel: Some futex improvements 2021-01-17 20:30:31 +01:00
FutexQueue.cpp Meta: Split debug defines into multiple headers. 2021-01-26 21:20:00 +01:00
FutexQueue.h Kernel: Some futex improvements 2021-01-17 20:30:31 +01:00
init.cpp Kernel: Introduce the MemoryDevice 2021-02-01 17:13:23 +01:00
IO.h Kernel: Convert a bunch of String::format() => String::formatted() 2021-01-11 22:07:01 +01:00
KBuffer.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
KBufferBuilder.cpp Kernel: Improve ProcFS behavior in low memory conditions 2021-01-03 22:12:19 +01:00
KBufferBuilder.h Kernel: Improve ProcFS behavior in low memory conditions 2021-01-03 22:12:19 +01:00
kprintf.cpp Everywhere: Replace a bundle of dbg with dbgln. 2021-01-09 21:11:09 +01:00
KResult.h Everywhere: Replace a bundle of dbg with dbgln. 2021-01-22 22:14:30 +01:00
kstdio.h LibC: Enable compiler warnings for printf format strings 2020-12-26 10:05:50 +01:00
KSyms.cpp Everywhere: Remove some bitrotted "#if 0" blocks 2021-02-03 11:17:47 +01:00
KSyms.h Kernel: Update cryptically-named functions related to symbolication 2020-04-08 17:19:46 +02:00
linker.ld Kernel: Move kmalloc heaps and super pages inside .bss segment 2021-01-22 22:17:39 +01:00
Lock.cpp Meta: Split debug defines into multiple headers. 2021-01-26 21:20:00 +01:00
Lock.h Everywhere: Use CMake to generate AK/Debug.h. 2021-01-25 09:47:36 +01:00
LockMode.h Kernel: Fix Lock race causing infinite spinning between two threads 2020-12-16 23:38:17 +01:00
mkmap.sh Build: Switch to CMake :^) 2020-05-14 20:15:18 +02:00
Module.h Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
Multiboot.h Kernel: Parse boot modules from Multiboot specification 2021-01-22 22:17:39 +01:00
PerformanceEventBuffer.cpp Kernel: Move perf event backtrace capture out of Thread class 2021-02-03 11:53:05 +01:00
PerformanceEventBuffer.h Kernel: Prune uninteresting kernel frames from profiling samples 2021-01-17 14:36:53 +01:00
PhysicalAddress.h Everywhere: Replace a bundle of dbg with dbgln. 2021-01-09 21:11:09 +01:00
Process.cpp Kernel: Add a way to specify which memory regions can make syscalls 2021-02-02 20:13:44 +01:00
Process.h Kernel: Add a way to specify which memory regions can make syscalls 2021-02-02 20:13:44 +01:00
ProcessGroup.cpp Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
ProcessGroup.h Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
Ptrace.cpp Kernel+LibC: Turn errno codes into a strongly typed enum 2021-01-20 23:20:02 +01:00
Ptrace.h Meta+Kernel: Make clang-format-10 clean 2020-09-25 21:18:17 +02:00
Random.cpp Kernel: Make KernelRng thread-safe 2021-01-28 08:15:26 +01:00
Random.h Kernel: Make KernelRng thread-safe 2021-01-28 08:15:26 +01:00
RTC.cpp Kernel: Minor tweak to now() computation 2020-08-26 08:52:07 +02:00
RTC.h Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
Scheduler.cpp Kernel: Retire SchedulerData and add Thread lookup table 2021-01-28 17:35:41 +01:00
Scheduler.h Kernel: Retire SchedulerData and add Thread lookup table 2021-01-28 17:35:41 +01:00
SpinLock.h Kernel: Tag more methods and types as [[nodiscard]] 2020-12-27 11:09:30 +01:00
StdLib.cpp Kernel: Add safe atomic functions 2021-01-17 20:30:31 +01:00
StdLib.h Kernel: Add safe atomic functions 2021-01-17 20:30:31 +01:00
Syscall.cpp Kernel: Add a way to specify which memory regions can make syscalls 2021-02-02 20:13:44 +01:00
Thread.cpp Kernel: Move perf event backtrace capture out of Thread class 2021-02-03 11:53:05 +01:00
Thread.h Kernel: Move perf event backtrace capture out of Thread class 2021-02-03 11:53:05 +01:00
ThreadBlockers.cpp Meta: Split debug defines into multiple headers. 2021-01-26 21:20:00 +01:00
ThreadTracer.cpp Kernel: PID/TID typing 2020-08-10 11:51:45 +02:00
ThreadTracer.h Kernel: PID/TID typing 2020-08-10 11:51:45 +02:00
TimerQueue.cpp Kernel: Improve time keeping and dramatically reduce interrupt load 2020-12-21 18:26:12 +01:00
TimerQueue.h Kernel: Specify default memory order for some non-synchronizing Atomics 2021-01-04 19:13:52 +01:00
UnixTypes.h Kernel: Fix enum of sysconf values to be in the correct order 2021-02-01 17:13:23 +01:00
UnveilNode.h Kernel: Allow 'elevating' unveil permissions if implicitly inherited from '/' 2020-12-26 16:10:04 +01:00
UserOrKernelBuffer.cpp AK: Add StringBuilder::appendff using the new format. 2020-09-22 15:06:40 +02:00
UserOrKernelBuffer.h FileSystem: Use OutputMemoryStream instead of BufferStream. 2020-09-15 20:36:45 +02:00
VirtualAddress.h AK: Add Formatter<FormatString> as helper class. 2021-01-09 21:11:09 +01:00
WaitQueue.cpp Meta: Split debug defines into multiple headers. 2021-01-26 21:20:00 +01:00
WaitQueue.h Kernel: Fix some race conditions with Lock and waiting/waking threads 2021-01-25 22:54:55 +01:00