[−][src]Struct sunrise_kernel::ipc::session::Request
An incoming IPC request.
Fields
sender_buf: VirtualAddress
Address of the mirror-mapped (in-kernel) IPC buffer. Guaranteed to be at least sender_bufsize in size.
sender_bufsize: usize
Size of the IPC buffer.
sender: Arc<ThreadStruct>
Thread that sent this request. It should be woken up when the request is answered.
answered: Arc<SpinLock<Option<Result<(), UserspaceError>>>>
A really really broken excuse for a condvar. The thread replying should insert a result (potentially an error) in this option before waking up the sender.
buffers: Vec<Buffer>
A/B/W buffers that were mapped during the request. We should unmap them when replying.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for Request
impl Send for Request
impl Sync for Request
impl Unpin for Request
impl !UnwindSafe for Request
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,