1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-23 20:45:07 +00:00
serenity/Kernel/Arch/x86/common
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
..
Interrupts Kernel: Stop using 'int's for indices in interrupt handling 2022-09-25 16:52:56 +03:00
ASM_wrapper.cpp Kernel: Add per platform Processor.h headers 2021-10-14 01:23:08 +01:00
BochsDebugOutput.h Kernel: Abstract platform-specific serial port access from kprintf 2022-09-20 18:43:05 +01:00
CMOS.cpp Kernel/x86: Move RTC and CMOS code to x86 arch-specific subdirectory 2022-09-20 18:43:05 +01:00
CMOS.h Kernel/x86: Move RTC and CMOS code to x86 arch-specific subdirectory 2022-09-20 18:43:05 +01:00
CPU.cpp Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
CPUID.cpp Kernel: Rename OSPKU CPUID feature flag to OSPKE 2022-04-08 18:53:42 +01:00
CrashHandler.cpp Kernel: Wrap process address spaces in SpinlockProtected 2022-08-24 14:57:51 +02:00
DebugOutput.cpp Kernel: Abstract platform-specific serial port access from kprintf 2022-09-20 18:43:05 +01:00
Delay.cpp Kernel: Move IO delay code to x86 architecture subdirectory 2022-09-20 18:43:05 +01:00
I8042Reboot.cpp Kernel: Abstracts x86 reboot and shutdown specific methods 2022-09-20 18:43:05 +01:00
I8042Reboot.h Kernel: Abstracts x86 reboot and shutdown specific methods 2022-09-20 18:43:05 +01:00
InterruptManagement.cpp Kernel: Stop using 'int's for indices in interrupt handling 2022-09-25 16:52:56 +03:00
Interrupts.cpp Kernel: Send SIGBUS to threads that use after valid Inode mmaped range 2022-09-26 20:00:34 +03:00
PageDirectory.cpp Kernel/x86: Protect the CR3->PD map with a spinlock 2022-08-22 17:56:03 +02:00
PCSpeaker.cpp Kernel: Move x86-specific timer code handling to Arch/x86/Time directory 2022-09-23 17:22:15 +01:00
PCSpeaker.h Kernel: Move PCSpeaker code to the x86-specific architecture directory 2022-09-20 18:43:05 +01:00
Processor.cpp Kernel: Move x86-specific IRQ controller code to Arch/x86 directory 2022-09-20 18:43:05 +01:00
ProcessorInfo.cpp Kernel: Expose cache size for Intel CPUs 2022-05-30 13:41:23 +01:00
RTC.cpp Kernel/x86: Move RTC and CMOS code to x86 arch-specific subdirectory 2022-09-20 18:43:05 +01:00
RTC.h Kernel/x86: Move RTC and CMOS code to x86 arch-specific subdirectory 2022-09-20 18:43:05 +01:00
SafeMem.cpp Kernel: Move Kernel/Arch/x86/SafeMem.h to Kernel/Arch/SafeMem.h 2022-05-03 21:53:36 +02:00
ScopedCritical.cpp Kernel: Move ScopedCritical + SmapDisabler CPP files into x86 common 2021-10-16 15:43:41 -07:00
Shutdown.cpp Kernel: Abstracts x86 reboot and shutdown specific methods 2022-09-20 18:43:05 +01:00
Shutdown.h Kernel: Abstracts x86 reboot and shutdown specific methods 2022-09-20 18:43:05 +01:00
SmapDisabler.cpp Kernel: Move ScopedCritical + SmapDisabler CPP files into x86 common 2021-10-16 15:43:41 -07:00
TrapFrame.cpp Kernel: Implement InterruptDisabler using generic Processor functions 2022-06-02 13:14:12 +01:00