ladybird/Kernel
Andreas Kling a0bb592b4f Kernel: Allow zero-fill page faults on kernel-only pages
We were short-circuiting the page fault handler a little too eagerly
for page-not-present faults in kernel memory.
If the current page directory already has up-to-date mapps for kernel
memory, allow it to progress to checking for zero-fill conditions.

This will enable us to have lazily populated kernel regions.
2019-08-06 15:06:31 +02:00
..
Arch/i386 Kernel: Don't treat read faults like CoW exceptions 2019-08-06 09:39:39 +02:00
Boot Kernel: Make better use of the multiboot info. 2019-06-02 09:53:42 +02:00
Devices Kernel: mount system call (#396) 2019-08-02 15:18:47 +02:00
FileSystem SynthFS: Remove unused create_text_file() feature 2019-08-05 22:37:50 +02:00
Net Kernel: Make KBuffer a value-type wrapper around a KBufferImpl 2019-08-05 11:07:45 +02:00
TTY AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
VM Kernel: Allow zero-fill page faults on kernel-only pages 2019-08-06 15:06:31 +02:00
.bochsrc Give the emulator testing environments 128 MB of RAM. 2019-03-27 13:02:29 +01: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-image-grub.sh Build: Remove grub from default build process 2019-06-04 07:15:44 -07:00
build-image-qemu.sh Build: Fix incorrect user and group settings for disk image (#280) 2019-07-03 16:57:37 +02:00
build-root-filesystem.sh ChanViewer: Start working on a simple read-only 4Chan viewer 2019-08-04 10:10:38 +02: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 AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
Console.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
DoubleBuffer.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
DoubleBuffer.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
grub.cfg Kernel: Parse cmdline for root filesystem e.g. root=/dev/hda1 2019-06-04 07:14:40 -07:00
init.cpp Kernel: fix typo regarding floppy drives in init_stage2 2019-07-30 09:16:47 +02:00
install.sh Build: Install most headers to Root (and libcore.a/libgui.a) 2019-05-17 21:59:48 +02: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 KBuffer: Add set_size() and LogStream operator<< 2019-08-06 07:31:52 +02:00
KeyCode.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
kmalloc.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
kmalloc.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
KParams.cpp AK: Make HashMap::get(Key) return an Optional<Value>. 2019-07-24 10:25:43 +02:00
KParams.h Kernel: Run clang-format on everything. 2019-06-07 11:43:58 +02:00
kprintf.cpp Kernel+LibC: Add a dbgputstr() syscall for sending strings to debug output. 2019-07-21 21:43:37 +02:00
KResult.h Kernel: Align the KResult value storage appropriately. 2019-08-02 19:22:48 +02:00
kstdio.h Kernel+LibC: Add a dbgputstr() syscall for sending strings to debug output. 2019-07-21 21:43:37 +02:00
KSyms.cpp Kernel: Add bounds checking to recognized_symbols in dump_backtrace_impl (#372) 2019-07-28 20:02:22 +02:00
KSyms.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
linker.ld Kernel: Use a multiboot header instead of a convoluted two-part bootloader. 2019-04-01 21:43:07 +02:00
Lock.cpp Kernel: Oops, forgot to add Lock.cpp. 2019-07-29 12:00:14 +02:00
Lock.h Kernel: Move Lock code out-of-line. 2019-07-29 11:19:04 +02:00
makeall.sh ChanViewer: Start working on a simple read-only 4Chan viewer 2019-08-04 10:10:38 +02:00
Makefile Kernel+AK: Remove AK/StdLibExtras.cpp, moving kernel stuff to Kernel/. 2019-07-29 11:58:44 +02:00
mkmap.sh Kernel: Don't symbolicate symbol+offset for obvious non-kernel addresses. 2019-04-30 14:47:22 +02: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
PCI.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
PCI.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: Add mapping from page directory base (PDB) to PageDirectory 2019-08-06 11:30:26 +02:00
Process.h Kernel+LibC: Support passing O_CLOEXEC to pipe() 2019-08-05 16:04:31 +02: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: Move File.{cpp,h} into FileSystem/ 2019-07-09 15:04:45 +02:00
RTC.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
RTC.h Add clang-format file 2019-05-28 17:31:20 +02:00
run Kernel: First cut of a sb16 driver 2019-07-13 08:00:24 +02:00
Scheduler.cpp Scheduler: Fix bitrotted SCHEDULER_RUNNABLE_DEBUG code 2019-08-01 20:00:56 +02:00
Scheduler.h Move runnable/non-runnable list control entirely over to Scheduler 2019-07-22 09:42:39 +02:00
SharedBuffer.cpp Kernel+ProcessManager: Let processes have an icon and show it in the table. 2019-07-29 07:26:01 +02:00
SharedBuffer.h Kernel+ProcessManager: Let processes have an icon and show it in the table. 2019-07-29 07:26:01 +02:00
StdLib.cpp Kernel+AK: Remove AK/StdLibExtras.cpp, moving kernel stuff to Kernel/. 2019-07-29 11:58:44 +02:00
StdLib.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
sync.sh Build: Remove grub from default build process 2019-06-04 07:15:44 -07:00
Syscall.cpp Kernel+LibC: Support passing O_CLOEXEC to pipe() 2019-08-05 16:04:31 +02:00
Syscall.h Kernel: mount system call (#396) 2019-08-02 15:18:47 +02:00
Thread.cpp Kernel: Clean up thread stacks when a thread dies 2019-08-01 20:17:12 +02:00
Thread.h Kernel: Clean up thread stacks when a thread dies 2019-08-01 20:17:12 +02:00
UnixTypes.h Kernel: Add support for the WSTOPPED flag to the waitpid() syscall. 2019-07-14 11:35:49 +02:00