ladybird/Kernel/Arch
Liav A 60b088b89a Kernel: Send SIGBUS to threads that use after valid Inode mmaped range
According to Dr. POSIX, we should allow to call mmap on inodes even on
ranges that currently don't map to any actual data. Trying to read or
write to those ranges should result in SIGBUS being sent to the thread
that did violating memory access.

To implement this restriction, we simply check if the result of
read_bytes on an Inode returns 0, which means we have nothing valid to
map to the program, hence it should receive a SIGBUS in that case.
2022-09-26 20:00:34 +03:00
..
aarch64 Kernel: Store IRQControllers in NonnullRefPtrs instead of RefPtrs 2022-09-25 16:52:56 +03:00
x86 Kernel: Send SIGBUS to threads that use after valid Inode mmaped range 2022-09-26 20:00:34 +03:00
CPU.h Kernel: Make handle_crash available to aarch64 2022-04-02 19:34:20 -07:00
DebugOutput.h Kernel: Abstract platform-specific serial port access from kprintf 2022-09-20 18:43:05 +01:00
DeferredCallEntry.h Kernel: Extract DeferredCallEntry from Arch/Processor.h 2021-12-11 13:23:27 -08:00
Delay.h Kernel: Move IO delay code to x86 architecture subdirectory 2022-09-20 18:43:05 +01:00
InterruptDisabler.h Kernel: Implement InterruptDisabler using generic Processor functions 2022-06-02 13:14:12 +01:00
InterruptManagement.h Kernel: Move IRQController and InterruptManagement to Arch directory 2022-06-02 13:14:12 +01:00
Interrupts.h Kernel: Rename idt_init() to initialize_interrupts() 2022-06-02 13:14:12 +01:00
IRQController.h Kernel: Move IRQController and InterruptManagement to Arch directory 2022-06-02 13:14:12 +01:00
mcontext.h Kernel: Do not include AK/Platform.h in mcontext headers 2022-05-30 21:39:41 +02:00
PageDirectory.h Kernel: Make PageDirectory.cpp compile on aarch64 2022-04-02 19:34:20 -07:00
PageFault.h Kernel: Make PageDirectory.cpp compile on aarch64 2022-04-02 19:34:20 -07:00
Processor.cpp Kernel: Add enum InterruptsState and helper functions 2022-08-26 12:51:57 +02:00
Processor.h Kernel: Add enum InterruptsState and helper functions 2022-08-26 12:51:57 +02:00
ProcessorSpecificDataID.h Kernel: Extract ProcessorSpecificDataID from from Arch/Processor.h 2021-12-11 13:23:27 -08:00
RegisterState.h Kernel: Add cross platform RegisterState header and Aarch64 version 2021-10-15 21:48:45 +01:00
SafeMem.h Everywhere: Fix order of includes and #pragma once 2022-09-18 18:30:05 -07:00
ScopedCritical.h Kernel: Split ScopedCritical so header is platform independent 2021-10-15 21:48:45 +01:00
SmapDisabler.h Kernel: Split SmapDisabler so header is platform independent 2021-10-15 21:48:45 +01:00