pub enum Syscall {
Yield {
yield_type: YieldVariant,
},
Subscribe {
driver_number: usize,
subdriver_number: usize,
upcall_ptr: CapabilityPtr,
appdata: MachineRegister,
},
Command {
driver_number: usize,
subdriver_number: usize,
arg0: usize,
arg1: usize,
},
ReadWriteAllow {
driver_number: usize,
subdriver_number: usize,
allow_address: *mut u8,
allow_size: usize,
},
UserspaceReadableAllow {
driver_number: usize,
subdriver_number: usize,
allow_address: *mut u8,
allow_size: usize,
},
ReadOnlyAllow {
driver_number: usize,
subdriver_number: usize,
allow_address: *const u8,
allow_size: usize,
},
Memop {
operand: usize,
arg0: usize,
},
Exit {
which: usize,
completion_code: usize,
},
}Expand description
Decoded system calls as defined in TRD104.
Variants§
Yield
Structure representing an invocation of the SyscallClass::Yield
system call class.
Fields
yield_type: YieldVariantThe yield variant.
Subscribe
Structure representing an invocation of the Subscribe system call class.
Fields
upcall_ptr: CapabilityPtrUpcall pointer to the upcall function.
appdata: MachineRegisterUserspace application data.
Command
Structure representing an invocation of the Command system call class.
Fields
ReadWriteAllow
Structure representing an invocation of the ReadWriteAllow system call class.
Fields
UserspaceReadableAllow
Structure representing an invocation of the UserspaceReadableAllow system call class that allows shared kernel and app access.
Fields
ReadOnlyAllow
Structure representing an invocation of the ReadOnlyAllow system call class.
Fields
Memop
Structure representing an invocation of the Memop system call class.
Exit
Structure representing an invocation of the Exit system call class.