ladybird/Kernel
kleines Filmröllchen 2fd23745a9 Kernel: Allow relaxing cleanup task rules during system shutdown
Once we move to a more proper shutdown procedure, processes other than
the finalizer task must be able to perform cleanup and finalization
duties, not only because the finalizer task itself needs to be cleaned
up by someone. This global variable, mirroring the early boot flags,
allows a future shutdown process to perform cleanup on its own.

Note that while this *could* be considered a weakening in security, the
attack surface is minimal and the results are not dramatic. To exploit
this, an attacker would have to gain a Kernel write primitive to this
global variable (bypassing KASLR among other things) and then gain some
way of calling the relevant functions, all of this only to destroy some
other running process. The same effect can be achieved with LPE which
can often be gained with significantly simpler userspace exploits (e.g.
of setuid binaries).
2023-07-15 00:12:01 +02:00
..
API Kernel: Add a key code modifier to detect the number pad 2023-07-09 06:32:20 +02:00
Arch Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
Boot Kernel: Move all boot-related code to the new Boot subdirectory 2023-06-04 21:32:34 +02:00
Bus Kernel/Tasks: Allow Kernel processes to be shut down 2023-07-15 00:12:01 +02:00
Devices Kernel: Add a key code modifier to detect the number pad 2023-07-09 06:32:20 +02:00
FileSystem Kernel/Tasks: Allow Kernel processes to be shut down 2023-07-15 00:12:01 +02:00
Firmware Kernel: Simplify reboot & poweroff code flow a bit 2023-06-27 20:04:42 +02:00
Heap Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
Interrupts Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
Library Everywhere: Resolve conflicts with LibC and libc++ 2023-06-27 12:40:38 +02:00
Locking Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
Memory Kernel: Allow relaxing cleanup task rules during system shutdown 2023-07-15 00:12:01 +02:00
Net Kernel/Tasks: Allow Kernel processes to be shut down 2023-07-15 00:12:01 +02:00
Prekernel Everywhere: Resolve conflicts with LibC and libc++ 2023-06-27 12:40:38 +02:00
Security Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
Syscalls Kernel: Consolidate finding the ELF stack size with validation 2023-07-10 21:08:31 -06:00
Tasks Kernel: Allow relaxing cleanup task rules during system shutdown 2023-07-15 00:12:01 +02:00
Time Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
TTY Kernel: Move all Graphics-related code into Devices/GPU directory 2023-06-06 00:40:32 +02:00
CMakeLists.txt Kernel: Allow relaxing cleanup task rules during system shutdown 2023-07-15 00:12:01 +02:00
Debug.h.in Kernel: Put loopback adapter debug spam behind a flag 2023-06-18 08:50:33 +01:00
embedmap.sh Kernel: Make new kernel build process work on macOS 2021-07-15 11:04:30 +02:00
Forward.h Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
generate-version-file.sh Kernel: Bake version information into the Kernel 2022-10-14 13:45:33 +02:00
kprintf.cpp Kernel: Move all Graphics-related code into Devices/GPU directory 2023-06-06 00:40:32 +02:00
kstdio.h Kernel: Remove includes to LibC stdarg definitions 2023-03-01 19:36:53 -07:00
KSyms.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
KSyms.h Kernel: Add ability to dump backtrace from provided frame pointer 2022-10-01 14:09:01 +02:00
mkmap.sh Kernel: Use the toolchain's nm in mkmap.sh 2021-12-30 18:10:51 +01:00
SanCov.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
Sections.h Kernel: Move all boot-related code to the new Boot subdirectory 2023-06-04 21:32:34 +02:00
UnixTypes.h Kernel: Add support for SA_SIGINFO 2022-03-04 20:07:05 +01:00