mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 02:27:43 +00:00
Kernel: Reject all syscalls during the shutdown procedure
This commit is contained in:
parent
a43133b3c7
commit
7082a1f0c4
1 changed files with 5 additions and 0 deletions
|
@ -18,6 +18,8 @@
|
||||||
|
|
||||||
namespace Kernel {
|
namespace Kernel {
|
||||||
|
|
||||||
|
extern bool g_in_system_shutdown;
|
||||||
|
|
||||||
namespace Syscall {
|
namespace Syscall {
|
||||||
|
|
||||||
using Handler = auto (Process::*)(FlatPtr, FlatPtr, FlatPtr, FlatPtr) -> ErrorOr<FlatPtr>;
|
using Handler = auto (Process::*)(FlatPtr, FlatPtr, FlatPtr, FlatPtr) -> ErrorOr<FlatPtr>;
|
||||||
|
@ -43,6 +45,9 @@ ErrorOr<FlatPtr> handle(RegisterState& regs, FlatPtr function, FlatPtr arg1, Fla
|
||||||
|
|
||||||
PerformanceManager::add_syscall_event(*current_thread, regs);
|
PerformanceManager::add_syscall_event(*current_thread, regs);
|
||||||
|
|
||||||
|
if (g_in_system_shutdown)
|
||||||
|
return ENOSYS;
|
||||||
|
|
||||||
if (function >= Function::__Count) {
|
if (function >= Function::__Count) {
|
||||||
dbgln("Unknown syscall {} requested ({:p}, {:p}, {:p}, {:p})", function, arg1, arg2, arg3, arg4);
|
dbgln("Unknown syscall {} requested ({:p}, {:p}, {:p}, {:p})", function, arg1, arg2, arg3, arg4);
|
||||||
return ENOSYS;
|
return ENOSYS;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue