ladybird/Kernel
Sergey Bugaev d6184afcae Kernel: Simplify VFS::resolve_path() further
It turns out we don't even need to store the whole custody chain, as we only
ever access its last element. So we can just store one custody. This also fixes
a performance FIXME :^)

Also, rename parent_custody to out_parent.
2020-01-17 21:49:58 +01:00
..
ACPI Kernel: Change ACPI & DMI definitions a bit 2020-01-14 15:38:58 +01:00
Arch/i386 Kernel: Remove problematic memory mapping methods 2020-01-14 15:38:58 +01:00
Devices Kernel: Add "video" pledge for accessing framebuffer devices 2020-01-12 02:18:30 +01:00
FileSystem Kernel: Simplify VFS::resolve_path() further 2020-01-17 21:49:58 +01:00
Heap Kernel: Demangle userspace ELF symbols in backtraces 2019-11-27 14:06:24 +01:00
Net Kernel: Fixing E1000 MMIO access 2020-01-14 15:38:58 +01:00
PCI Kernel: Move DMI decoder initialization method to init_stage2 2020-01-14 15:38:58 +01:00
TTY Kernel: Require "tty" for ioctl() on TTY and MasterPTY 2020-01-12 13:29:51 +01:00
VM Kernel: Change Region allocation helpers 2020-01-14 15:38:58 +01:00
.bochsrc Meta: Make Serenity run on Bochs once again 2019-08-06 21:09:24 +02:00
.gitignore Meta: Removed all gitignore in the source tree only keeping the root one 2019-06-30 10:41:26 +02:00
Assertions.h Kernel: Move i386.{cpp,h} => Arch/i386/CPU.{cpp,h} 2019-06-07 20:02:01 +02:00
build-gpt-image-grub.sh Build: Fix more bugs in the POSIX sh-ification of scripts 2019-11-03 13:11:43 +01:00
build-image-grub.sh Build: use $SUDO_[UG]ID in build-image-* instead of relying on makeall 2020-01-15 21:52:09 +01:00
build-image-qemu.sh Build: use $SUDO_[UG]ID in build-image-* instead of relying on makeall 2020-01-15 21:52:09 +01:00
build-root-filesystem.sh Base: Let's make home directories 700 to keep things private :^) 2020-01-09 21:57:52 +01:00
CMOS.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
CMOS.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
Console.cpp Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
Console.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
debug-kernel Debugging: Add kernel debugging support 2020-01-13 11:06:42 +01:00
DoubleBuffer.cpp Revert "Kernel: Make DoubleBuffer use a KBuffer instead of kmalloc()ing" 2019-10-18 15:58:06 +02:00
DoubleBuffer.h Revert "Kernel: Make DoubleBuffer use a KBuffer instead of kmalloc()ing" 2019-10-18 15:58:06 +02:00
FB.h Kernel: Add framebuffer ioctls; wrap raw ioctls with a C API 2019-08-18 07:40:02 +02:00
grub_gpt.cfg Kernel: Move DMI decoder initialization method to init_stage2 2020-01-14 15:38:58 +01:00
grub.cfg Kernel: Move DMI decoder initialization method to init_stage2 2020-01-14 15:38:58 +01:00
init.cpp Kernel: Move DMI decoder initialization method to init_stage2 2020-01-14 15:38:58 +01:00
IO.h Kernel: First cut of a sb16 driver 2019-07-13 08:00:24 +02:00
IRQHandler.cpp Kernel: Move PIC.cpp into Arch/i386/ 2019-07-09 15:04:43 +02:00
IRQHandler.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
KBuffer.h Kernel: Make kernel memory regions be non-executable by default 2019-12-25 22:41:34 +01:00
KBufferBuilder.cpp Kernel: Make kernel memory regions be non-executable by default 2019-12-25 22:41:34 +01:00
KBufferBuilder.h AK: Rename <AK/AKString.h> to <AK/String.h> 2019-09-06 15:36:54 +02:00
KernelInfoPage.h Kernel+LibC: Publish a "kernel info page" and use it for gettimeofday() 2019-12-15 21:29:26 +01:00
KeyCode.h Kernel: Implement AltGr key support 2019-12-31 19:31:42 +01:00
KParams.cpp AK: Make HashMap::get(Key) return an Optional<Value>. 2019-07-24 10:25:43 +02:00
KParams.h AK: Rename <AK/AKString.h> to <AK/String.h> 2019-09-06 15:36:54 +02:00
kprintf.cpp Kernel: Demangle userspace ELF symbols in backtraces 2019-11-27 14:06:24 +01:00
KResult.h Kernel: Add KResult::error() to make it look symmetrical with KResultOr 2020-01-06 12:08:27 +01:00
kstdio.h Kernel: Overload dbgputstr for char array literals in C++ 2020-01-13 13:03:30 +01:00
KSyms.cpp Kernel+LibELF: Don't blindly trust ELF symbol offsets in symbolication 2020-01-16 22:11:31 +01:00
KSyms.h Kernel+LibELF: Don't blindly trust ELF symbol offsets in symbolication 2020-01-16 22:11:31 +01:00
linker.ld Kernel: Reindent linker script 2020-01-17 11:07:02 +01:00
Lock.cpp Kernel: Allow unlocking a held Lock with interrupts disabled 2020-01-13 18:56:46 +01:00
Lock.h Kernel: Allow unlocking a held Lock with interrupts disabled 2020-01-13 18:56:46 +01:00
makeall.sh Build: use $SUDO_[UG]ID in build-image-* instead of relying on makeall 2020-01-15 21:52:09 +01:00
Makefile Debugging: Add kernel debugging support 2020-01-13 11:06:42 +01:00
mkmap.sh Kernel: Allow modules to link against anything in kernel.map :^) 2019-11-28 21:30:20 +01:00
Module.h Kernel: Implement basic module unloading :^) 2019-11-28 21:07:22 +01:00
MousePacket.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
Multiboot.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
Process.cpp Kernel: Drop futex queues/state on exec() 2020-01-17 16:08:00 +01:00
Process.h Kernel: Add "accept" pledge promise for accepting incoming connections 2020-01-17 11:19:06 +01:00
ProcessTracer.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
ProcessTracer.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
Profiling.cpp Kernel: Separate out the symbol offsets in profile output 2019-12-12 21:59:47 +01:00
Profiling.h Kernel: Separate out the symbol offsets in profile output 2019-12-12 21:59:47 +01:00
Random.cpp Kernel: Add a more expressive API for getting random bytes 2020-01-03 12:43:07 +01:00
Random.h Kernel: Add a more expressive API for getting random bytes 2020-01-03 12:43:07 +01:00
RTC.cpp Kernel: Fix BIOS date/time on hardware 2019-09-28 13:59:49 +02:00
RTC.h Add clang-format file 2019-05-28 17:31:20 +02:00
run run: Bump default RAM size from 128 MB to 256 MB 2020-01-15 23:14:20 +01:00
Scheduler.cpp Kernel: Dispatch pending signals when returning from a syscall 2020-01-12 15:04:33 +01:00
Scheduler.h Kernel: Switch to eagerly restoring x86 FPU state on context switch 2020-01-01 16:54:21 +01:00
SharedBuffer.cpp Kernel: Use Vector::unstable_remove() in a couple of places 2020-01-15 19:26:41 +01:00
SharedBuffer.h Kernel+LibC: Make all SharedBuffers purgeable (default: non-volatile) 2019-12-09 20:06:47 +01:00
StdLib.cpp Kernel: Randomize the stack canary on startup 2020-01-06 13:05:40 +01:00
StdLib.h Kernel: Pass a parameter struct to mknod() 2020-01-11 10:27:37 +01:00
sync.sh Meta: Allow sync.sh to be run from any directory 2020-01-06 10:43:00 +01:00
Syscall.cpp Kernel: Dispatch pending signals when returning from a syscall 2020-01-12 15:04:33 +01:00
Syscall.h ping: Use pledge() 2020-01-11 20:48:43 +01:00
TestModule.cpp Kernel: Have modules export their name in a "module_name" string 2019-11-29 21:31:17 +01:00
Thread.cpp Kernel: Allow unlocking a held Lock with interrupts disabled 2020-01-13 18:56:46 +01:00
Thread.h Kernel: Fix Lock racing to the WaitQueue 2020-01-12 19:04:16 +01:00
TimerQueue.cpp Kernel: Add kernel-level timer queue (heavily based on @juliusf's work) 2019-12-27 02:15:45 +01:00
TimerQueue.h Kernel: Add kernel-level timer queue (heavily based on @juliusf's work) 2019-12-27 02:15:45 +01:00
UnixTypes.h Kernel: Add a mode flag to sys$purge and allow purging clean inodes 2019-12-29 13:16:53 +01:00
WaitQueue.cpp Kernel: Fix Lock racing to the WaitQueue 2020-01-12 19:04:16 +01:00
WaitQueue.h Kernel: Fix Lock racing to the WaitQueue 2020-01-12 19:04:16 +01:00