#[repr(i32)]
#[non_exhaustive]
pub enum MmapAdvise {
Show 17 variants
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,
}
Expand description
Usage information for a range of memory to allow for performance optimizations by the kernel.
Used by madvise
.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
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
sourceimpl Clone for MmapAdvise
impl Clone for MmapAdvise
sourcefn clone(&self) -> MmapAdvise
fn clone(&self) -> MmapAdvise
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresourceimpl Debug for MmapAdvise
impl Debug for MmapAdvise
sourceimpl Hash for MmapAdvise
impl Hash for MmapAdvise
sourceimpl Ord for MmapAdvise
impl Ord for MmapAdvise
sourcefn cmp(&self, other: &MmapAdvise) -> Ordering
fn cmp(&self, other: &MmapAdvise) -> Ordering
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
sourceimpl PartialEq<MmapAdvise> for MmapAdvise
impl PartialEq<MmapAdvise> for MmapAdvise
sourcefn eq(&self, other: &MmapAdvise) -> bool
fn eq(&self, other: &MmapAdvise) -> bool
sourceimpl PartialOrd<MmapAdvise> for MmapAdvise
impl PartialOrd<MmapAdvise> for MmapAdvise
sourcefn partial_cmp(&self, other: &MmapAdvise) -> Option<Ordering>
fn partial_cmp(&self, other: &MmapAdvise) -> Option<Ordering>
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more