ladybird/Kernel/API
Andreas Kling 5dcc58d54a Kernel+LibCore: Make %sid path parsing not take ages
Before this patch, Core::SessionManagement::parse_path_with_sid() would
figure out the root session ID by sifting through /sys/kernel/processes.

That file can take quite a while to generate (sometimes up to 40ms on my
machine, which is a problem on its own!) and with no caching, many of
our programs were effectively doing this multiple times on startup when
unveiling something in /tmp/session/%sid/

While we should find ways to make generating /sys/kernel/processes fast
again, this patch addresses the specific problem by introducing a new
syscall: sys$get_root_session_id(). This extracts the root session ID
by looking directly at the process table and takes <1ms instead of 40ms.

This cuts WebContent process startup time by ~100ms on my machine. :^)
2023-01-10 19:32:31 +01:00
..
POSIX Kernel+LibC+LibELF: Set stack size based on PT_GNU_STACK during execve 2022-12-11 19:55:37 -07:00
Device.h Kernel: Mark serenity_dev_ functions as static 2022-03-18 11:59:35 +00:00
DeviceEvent.h Kernel/Devices: Introduce the Device Control Device 2022-01-23 00:38:02 +00:00
Graphics.h AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
InodeWatcherEvent.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
InodeWatcherFlags.h Kernel: Implement multi-watch InodeWatcher :^) 2021-05-12 22:38:20 +02:00
KeyCode.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
MemoryLayout.h Kernel: Move userspace virtual address range base to 0x10000 2021-12-22 00:02:36 -08:00
MousePacket.h Kernel: Add horizontal mouse scroll support 2022-01-20 10:37:52 +01:00
serenity_limits.h Kernel: Bump maximum pthread stack size to 32MiB 2022-12-11 19:55:37 -07:00
Syscall.h Kernel+LibCore: Make %sid path parsing not take ages 2023-01-10 19:32:31 +01:00
SyscallString.h Kernel: Stop requiring working malloc for syscall.h includes 2022-05-02 12:44:34 +02:00
TimePage.h Kernel: Add CLOCK_MONOTONIC_COARSE to the kernel time page 2021-08-10 21:51:05 +02:00
Unveil.h Kernel+LibCore+LibC: Implement support for forcing unveil on exec 2022-11-26 12:42:15 -07:00
VirGL.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
VirtualMemoryAnnotations.h Kernel/Memory: Add option to annotate region mapping as immutable 2022-12-16 01:02:00 -07:00