|
| bool | registerSyscallHandler (Service_t service, SyscallHandler *handler, Registration ®istration, FastEntry entry=nullptr) override |
| |
| uintptr_t | syscall (Service_t service, uintptr_t function, uintptr_t p1=0, uintptr_t p2=0, uintptr_t p3=0, uintptr_t p4=0, uintptr_t p5=0) override |
| |
| EXPORTED_PUBLIC bool | requestThreadExit () |
| |
| EXPORTED_PUBLIC bool | requestProcessExit (int status) |
| |
| EXPORTED_PUBLIC bool | requestEventReturn () |
| |
| EXPORTED_PUBLIC bool | requestEventStatePop () |
| |
| EXPORTED_PUBLIC bool | requestStateRestore (const ProcessorState &state) |
| |
| EXPORTED_PUBLIC bool | requestUserJump (uintptr_t instructionPointer, uintptr_t stackPointer) |
| |
| EXPORTED_PUBLIC bool | requestReboot (Machine::ShutdownType type=Machine::ShutdownType::Restart) |
| |
|
| enum | PostSyscallActionKind {
NoPostSyscallAction
, TerminateCurrentThread
, ExitCurrentProcess
, ReturnFromEvent
,
PopEventState
, RestoreProcessorState
, JumpToUserspace
, RebootSystem
} |
| |
| using | FastEntry = uintptr_t(*)(SyscallHandler *, SyscallState &) |
| |
| bool | registerHandler (Service_t service, SyscallHandler *pHandler, Registration ®istration, FastEntry entry=nullptr) |
| |
| ALWAYS_INLINE uintptr_t | dispatchHandler (const HandlerLease &lease, SyscallState &state) const |
| |
| bool | closeHandler (Registration ®istration) |
| |
| bool | unregisterHandler (Registration ®istration) |
| |
| bool | acquireHandler (Service_t service, HandlerLease &lease, PostSyscallAction &action) |
| |
| | SyscallManager () |
| |
| virtual | ~SyscallManager () |
| |
◆ handle()
| void Arm64SyscallManager::handle |
( |
SyscallState & |
state | ) |
|
|
static |
◆ instance()
◆ registerSyscallHandler()
| bool Arm64SyscallManager::registerSyscallHandler |
( |
Service_t |
Service, |
|
|
SyscallHandler * |
pHandler, |
|
|
Registration & |
registration, |
|
|
FastEntry |
entry = nullptr |
|
) |
| |
|
overridevirtual |
Register a syscall handler
- Parameters
-
| [in] | Service | the service number you want to register |
| [in] | pHandler | the interrupt handler |
| [in] | entry | optional nonvirtual implementation of the same syscall contract |
- Returns
- true, if successfully registered, false otherwise
Implements SyscallManager.
Definition at line 53 of file arm64/SyscallManager.cc.
◆ syscall()
| uintptr_t Arm64SyscallManager::syscall |
( |
Service_t |
service, |
|
|
uintptr_t |
function, |
|
|
uintptr_t |
p1 = 0, |
|
|
uintptr_t |
p2 = 0, |
|
|
uintptr_t |
p3 = 0, |
|
|
uintptr_t |
p4 = 0, |
|
|
uintptr_t |
p5 = 0 |
|
) |
| |
|
overridevirtual |
◆ m_Instance
The documentation for this class was generated from the following files: