Files
k-os/crates/domain/src/error.rs

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),
}