mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 02:37:36 +00:00
Kernel: Remove trap based syscall handling
This patch removes the x86 mechanism for calling syscalls, favoring the more modern syscall instruction. It also moves architecture dependent code from functions that are meant to be architecture agnostic therefore paving the way for adding more architectures.
This commit is contained in:
parent
e71c320154
commit
bfbb4bcd9b
4 changed files with 14 additions and 51 deletions
|
@ -4,9 +4,18 @@
|
|||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#include <Kernel/API/Syscall.h>
|
||||
#include <Kernel/Arch/TrapFrame.h>
|
||||
#include <Kernel/Arch/x86_64/DescriptorTable.h>
|
||||
#include <Kernel/Arch/x86_64/Processor.h>
|
||||
#include <Kernel/Assertions.h>
|
||||
#include <Kernel/Panic.h>
|
||||
#include <Kernel/Process.h>
|
||||
#include <Kernel/Scheduler.h>
|
||||
#include <Kernel/Thread.h>
|
||||
#include <Kernel/ThreadTracer.h>
|
||||
|
||||
using namespace Kernel;
|
||||
|
||||
extern "C" void syscall_entry();
|
||||
extern "C" [[gnu::naked]] void syscall_entry()
|
||||
|
|
|
@ -341,7 +341,6 @@ void init_stage2(void*)
|
|||
}
|
||||
|
||||
NetworkingManagement::the().initialize();
|
||||
Syscall::initialize();
|
||||
|
||||
#ifdef ENABLE_KERNEL_COVERAGE_COLLECTION
|
||||
(void)KCOVDevice::must_create().leak_ref();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue