mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 05:57:45 +00:00
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.
This commit is contained in:
parent
69f7a59a34
commit
60b088b89a
3 changed files with 17 additions and 2 deletions
|
@ -10,6 +10,7 @@ namespace Kernel {
|
|||
|
||||
enum class PageFaultResponse {
|
||||
ShouldCrash,
|
||||
BusError,
|
||||
OutOfMemory,
|
||||
Continue,
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue