27 lines
622 B
Rust
27 lines
622 B
Rust
use types::{
|
|
bounded::CapSlot,
|
|
id::{EndpointId, IrqId, ProcessId, ThreadId},
|
|
permission::Permission,
|
|
};
|
|
|
|
#[derive(Debug)]
|
|
pub enum KernelError {
|
|
InvalidSlot(CapSlot),
|
|
RevokedCapability(CapSlot),
|
|
PermissionDenied { slot: CapSlot, needed: Permission },
|
|
NoFreeSlot,
|
|
InvalidProcess(ProcessId),
|
|
WouldBlock,
|
|
TooManyThreadsInProcess,
|
|
TooManyProcesses,
|
|
InvalidStateTransition(ThreadId),
|
|
InvalidThread(ThreadId),
|
|
TooManyThreads,
|
|
OutOfMemory,
|
|
InvalidEndpoint(EndpointId),
|
|
InvalidIrq(IrqId),
|
|
EndpointFull,
|
|
ProcessCreateDenied,
|
|
IrqAlreadyOwned(IrqId),
|
|
}
|