mirror of
https://github.com/SerenityOS/serenity.git
synced 2025-01-23 18:02:05 -05:00
5dcc58d54a
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. :^) |
||
---|---|---|
.. | ||
POSIX | ||
Device.h | ||
DeviceEvent.h | ||
Graphics.h | ||
InodeWatcherEvent.h | ||
InodeWatcherFlags.h | ||
KeyCode.h | ||
MemoryLayout.h | ||
MousePacket.h | ||
serenity_limits.h | ||
Syscall.h | ||
SyscallString.h | ||
TimePage.h | ||
Unveil.h | ||
VirGL.h | ||
VirtualMemoryAnnotations.h |