pub struct InFlightDma { /* private fields */ }Expand description
DMA backing currently owned by a hardware request.
Dropping this object intentionally leaks the backing as a last-resort quarantine: safe callers must not observe memory reuse while hardware could still be accessing it.
Implementations§
Source§impl InFlightDma
impl InFlightDma
pub fn len(&self) -> NonZeroUsize
pub fn direction(&self) -> DmaDirection
pub fn domain_id(&self) -> DmaDomainId
pub fn cpu_ptr(&self) -> NonNull<u8>
pub fn dma_addr(&self) -> DmaAddr
pub fn segment(&self) -> DmaSegment
Sourcepub unsafe fn complete_after_quiesce(self) -> CompletedDma
pub unsafe fn complete_after_quiesce(self) -> CompletedDma
§Safety
The caller must have stopped DMA bus-master access and any command/data engine that can touch this exact in-flight backing.
pub fn quarantine(self) -> QuarantinedDma
Auto Trait Implementations§
impl !RefUnwindSafe for InFlightDma
impl !UnwindSafe for InFlightDma
impl Freeze for InFlightDma
impl Send for InFlightDma
impl Sync for InFlightDma
impl Unpin for InFlightDma
impl UnsafeUnpin for InFlightDma
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more