pub struct NixlRegistered<S: NixlCompatible> { /* private fields */ }Expand description
Wrapper for storage that has been registered with NIXL.
This wrapper ensures proper drop order: the registration handle is dropped before the storage, ensuring deregistration happens before the memory is freed.
Implementations§
Source§impl<S: MemoryDescriptor + NixlCompatible> NixlRegistered<S>
impl<S: MemoryDescriptor + NixlCompatible> NixlRegistered<S>
Sourcepub fn storage_mut(&mut self) -> &mut S
pub fn storage_mut(&mut self) -> &mut S
Get a mutable reference to the underlying storage.
Sourcepub fn is_registered(&self) -> bool
pub fn is_registered(&self) -> bool
Check if the registration handle is still valid.
Sourcepub fn into_storage(self) -> S
pub fn into_storage(self) -> S
Consume this wrapper and return the underlying storage.
This will deregister the storage from NIXL.
Trait Implementations§
Source§impl<S: NixlCompatible + Debug> Debug for NixlRegistered<S>
impl<S: NixlCompatible + Debug> Debug for NixlRegistered<S>
Source§impl<S: NixlCompatible> Drop for NixlRegistered<S>
impl<S: NixlCompatible> Drop for NixlRegistered<S>
Source§impl<S: MemoryDescriptor + NixlCompatible + 'static> MemoryDescriptor for NixlRegistered<S>
impl<S: MemoryDescriptor + NixlCompatible + 'static> MemoryDescriptor for NixlRegistered<S>
Source§fn storage_kind(&self) -> StorageKind
fn storage_kind(&self) -> StorageKind
Type of storage backing this region.
Source§fn nixl_descriptor(&self) -> Option<NixlDescriptor>
fn nixl_descriptor(&self) -> Option<NixlDescriptor>
Get the NIXL descriptor for this memory region.
Source§impl<S: MemoryDescriptor + NixlCompatible> RegisteredView for NixlRegistered<S>
impl<S: MemoryDescriptor + NixlCompatible> RegisteredView for NixlRegistered<S>
Source§fn agent_name(&self) -> &str
fn agent_name(&self) -> &str
Get the name of the NIXL agent that registered this memory.
Source§fn descriptor(&self) -> NixlDescriptor
fn descriptor(&self) -> NixlDescriptor
Get the NIXL descriptor for this registered memory.
Auto Trait Implementations§
impl<S> Freeze for NixlRegistered<S>where
S: Freeze,
impl<S> RefUnwindSafe for NixlRegistered<S>where
S: RefUnwindSafe,
impl<S> Send for NixlRegistered<S>where
S: Send,
impl<S> Sync for NixlRegistered<S>where
S: Sync,
impl<S> Unpin for NixlRegistered<S>where
S: Unpin,
impl<S> UnsafeUnpin for NixlRegistered<S>where
S: UnsafeUnpin,
impl<S> UnwindSafe for NixlRegistered<S>where
S: UnwindSafe,
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