Enum nix::sys::mman::MmapAdvise
#[repr(i32)]
#[non_exhaustive]
pub enum MmapAdvise {
MADV_NORMAL,
MADV_RANDOM,
MADV_SEQUENTIAL,
MADV_WILLNEED,
MADV_DONTNEED,
MADV_REMOVE,
MADV_DONTFORK,
MADV_DOFORK,
MADV_HWPOISON,
MADV_MERGEABLE,
MADV_UNMERGEABLE,
MADV_SOFT_OFFLINE,
MADV_HUGEPAGE,
MADV_NOHUGEPAGE,
MADV_DONTDUMP,
MADV_DODUMP,
MADV_FREE,
}
Documentation
Usage information for a range of memory to allow for performance optimizations by the kernel.
Used by madvise
.
Variants
MADV_NORMAL
No further special treatment. This is the default.
MADV_RANDOM
Expect random page references.
MADV_SEQUENTIAL
Expect sequential page references.
MADV_WILLNEED
Expect access in the near future.
MADV_DONTNEED
Do not expect access in the near future.
MADV_REMOVE
Free up a given range of pages and its associated backing store.
MADV_DONTFORK
Do not make pages in this range available to the child after a fork(2)
.
MADV_DOFORK
Undo the effect of MADV_DONTFORK
.
MADV_HWPOISON
Poison the given pages.
Subsequent references to those pages are treated like hardware memory corruption.
MADV_MERGEABLE
Enable Kernel Samepage Merging (KSM) for the given pages.
MADV_UNMERGEABLE
Undo the effect of MADV_MERGEABLE
MADV_SOFT_OFFLINE
Preserve the memory of each page but offline the original page.
MADV_HUGEPAGE
Enable Transparent Huge Pages (THP) for pages in the given range.
MADV_NOHUGEPAGE
Undo the effect of MADV_HUGEPAGE
.
MADV_DONTDUMP
Exclude the given range from a core dump.
MADV_DODUMP
Undo the effect of an earlier MADV_DONTDUMP
.
MADV_FREE
Specify that the application no longer needs the pages in the given range.
Trait Implementations
impl Clone for MmapAdvise
fn clone(&Self) -> MmapAdvise
impl Copy for MmapAdvise
impl Debug for MmapAdvise
fn fmt(&Self, f: &mut $crate::fmt::Formatter<'_>) -> $crate::fmt::Result
impl Eq for MmapAdvise
impl Hash for MmapAdvise
fn hash<__H: $crate::hash::Hasher>(&Self, state: &mut __H) -> ()
impl Ord for MmapAdvise
fn cmp(&Self, other: &MmapAdvise) -> $crate::cmp::Ordering
impl PartialEq<MmapAdvise> for MmapAdvise
fn eq(&Self, other: &MmapAdvise) -> bool
impl PartialOrd<MmapAdvise> for MmapAdvise
fn partial_cmp(&Self, other: &MmapAdvise) -> $crate::option::Option<$crate::cmp::Ordering>
impl StructuralEq for MmapAdvise
impl StructuralPartialEq for MmapAdvise
Auto Trait Implementations
impl RefUnwindSafe for MmapAdvise
impl Send for MmapAdvise
impl Sync for MmapAdvise
impl Unpin for MmapAdvise
impl UnwindSafe for MmapAdvise
Blanket Implementations
impl<T> BorrowMut<T> for T
where
T: ?Sized,
where
T: ?Sized,
fn borrow_mut(&mut Self) -> &mut T