ladybird/Kernel
Idan Horowitz f972eda7ed Kernel: Mark cloned volatile purgeable AnonymousVMOjects as purged
Our existing AnonymousVMObject cloning flow contains an optimization
wherein purgeable VMObjects which are marked volatile during the clone
are created as a new zero-filled VMObject (as if it was purged), which
lets us skip the expensive COW process.

Unfortunately, one crucial part was missing: Marking the cloned region
as purged, (which is the value returned from madvise when unmarking the
region as volatile) so the userland logic was left unaware of the
effective zero-ing of their memory region, resulting in odd behaviour
and crashes in places like our malloc's large allocation support.
2023-12-22 10:57:59 +01:00
..
API Kernel/riscv64: Add RISC-V Syscall API 2023-11-10 15:51:31 -07:00
Arch Kernel/riscv64: Specify correct alignment for FPUState struct 2023-12-16 18:21:03 +01:00
Boot Kernel: Switch init boot argument to "/init" 2023-11-27 09:29:05 -07:00
Bus Kernel/riscv64: Make the kernel compile 2023-11-10 15:51:31 -07:00
Devices Kernel: Resolve deadlock in MasterPTY due to mutex in spinlock scope 2023-12-16 12:55:41 +01:00
FileSystem Kernel/SysFS: Fix bizarre mode bits for directories in SysFS 2023-12-01 20:46:21 +01:00
Firmware/ACPI
Heap Kernel/riscv64: Make the kernel compile 2023-11-10 15:51:31 -07:00
Interrupts
Library AK: Rename GenericTraits to DefaultTraits 2023-11-09 10:05:51 -05:00
Locking Kernel: Share Processor class (and others) across architectures 2023-10-03 16:08:29 -06:00
Memory Kernel: Mark cloned volatile purgeable AnonymousVMOjects as purged 2023-12-22 10:57:59 +01:00
Net Kernel: Stop including the ethernet header in LoopbackAdapter's mtu 2023-11-25 16:34:38 +01:00
Prekernel Everywhere: Replace ElfW(type) macro usage with Elf_type 2023-12-01 10:02:39 +02:00
Security
Syscalls Kernel: Reject loading ELF files with no loadable segments 2023-12-15 21:36:25 +01:00
Tasks Kernel: Make CrashHandler more useful before init_stage2 2023-12-09 22:36:28 +01:00
Time Kernel/riscv64: Make the kernel compile 2023-11-10 15:51:31 -07:00
CMakeLists.txt Kernel/riscv64: Make the kernel compilable using GCC 2023-12-14 09:02:15 -07:00
Debug.h.in Kernel: Add a framebuffer driver for 3Dfx Voodoo 3 2023-10-16 01:25:45 +02:00
embedmap.sh
Forward.h
generate-version-file.sh
kprintf.cpp
kstdio.h
KSyms.cpp Kernel/riscv64: Make the kernel compile 2023-11-10 15:51:31 -07:00
KSyms.h
mkmap.sh
SanCov.cpp
Sections.h
UnixTypes.h Kernel/Net: Implement TCP_NODELAY 2023-11-08 09:31:54 +01:00