Struct hal_x86_64::mm::PageCtrl
source · pub struct PageCtrl { /* private fields */ }
Implementations§
Trait Implementations§
source§impl<A> Map<Size4Kb, A> for PageCtrl
impl<A> Map<Size4Kb, A> for PageCtrl
source§unsafe fn unmap(&mut self, _virt: Page<VAddr, Size4Kb>) -> Page<PAddr, Size4Kb>
unsafe fn unmap(&mut self, _virt: Page<VAddr, Size4Kb>) -> Page<PAddr, Size4Kb>
Safety
Unmapping a page can break pretty much everything.
type Entry = Entry<Pt>
source§unsafe fn map_page(
&mut self,
virt: Page<VAddr, Size4Kb>,
phys: Page<PAddr, Size4Kb>,
frame_alloc: &A
) -> Handle<'_, Size4Kb, Self::Entry>
unsafe fn map_page( &mut self, virt: Page<VAddr, Size4Kb>, phys: Page<PAddr, Size4Kb>, frame_alloc: &A ) -> Handle<'_, Size4Kb, Self::Entry>
fn flags_mut( &mut self, _virt: Page<VAddr, Size4Kb> ) -> Handle<'_, Size4Kb, Self::Entry>
§fn identity_map(
&mut self,
phys: Page<PAddr, S>,
frame_alloc: &A
) -> Handle<'_, S, Self::Entry>
fn identity_map( &mut self, phys: Page<PAddr, S>, frame_alloc: &A ) -> Handle<'_, S, Self::Entry>
Identity map the provided physical page to the virtual page with the
same address.
§unsafe fn map_range<F>(
&mut self,
virt: PageRange<VAddr, S>,
phys: PageRange<PAddr, S>,
set_flags: F,
frame_alloc: &A
) -> PageRange<VAddr, S> ⓘ
unsafe fn map_range<F>( &mut self, virt: PageRange<VAddr, S>, phys: PageRange<PAddr, S>, set_flags: F, frame_alloc: &A ) -> PageRange<VAddr, S> ⓘ
Map the range of virtual memory pages represented by
virt
to the range
of physical pages represented by phys
. Read more§unsafe fn unmap_range(&mut self, virt: PageRange<VAddr, S>)
unsafe fn unmap_range(&mut self, virt: PageRange<VAddr, S>)
Unmap the provided range of virtual pages. Read more
source§impl<S> TranslatePage<S> for PageCtrl
impl<S> TranslatePage<S> for PageCtrl
fn translate_page(&self, virt: Page<VAddr, S>) -> TranslateResult<PAddr, S>
Auto Trait Implementations§
impl RefUnwindSafe for PageCtrl
impl !Send for PageCtrl
impl !Sync for PageCtrl
impl Unpin for PageCtrl
impl UnwindSafe for PageCtrl
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
source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Casts the value.
source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Casts the value.
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Casts the value.
source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Casts the value.
source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
Casts the value.
source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
Casts the value.
source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.