xenevtchn/
error.rs

1use std::io;
2
3#[derive(thiserror::Error, Debug)]
4pub enum Error {
5    #[error("kernel error: {0}")]
6    Kernel(#[from] nix::errno::Errno),
7    #[error("io issue encountered: {0}")]
8    Io(#[from] io::Error),
9    #[error("failed to send event channel wake: {0}")]
10    WakeSend(tokio::sync::broadcast::error::SendError<u32>),
11    #[error("failed to acquire lock")]
12    LockAcquireFailed,
13    #[error("event port already in use")]
14    PortInUse,
15    #[error("failed to join blocking task")]
16    BlockingTaskJoin,
17}
18
19pub type Result<T> = std::result::Result<T, Error>;