mirror of
https://github.com/rcore-os/rCore-Tutorial-v3.git
synced 2024-11-22 01:16:26 +04:00
Fix issue #123
This commit is contained in:
parent
e9e7a2856e
commit
1dda82bd58
@ -101,7 +101,11 @@ impl VirtAddr {
|
|||||||
VirtPageNum(self.0 / PAGE_SIZE)
|
VirtPageNum(self.0 / PAGE_SIZE)
|
||||||
}
|
}
|
||||||
pub fn ceil(&self) -> VirtPageNum {
|
pub fn ceil(&self) -> VirtPageNum {
|
||||||
VirtPageNum((self.0 - 1 + PAGE_SIZE) / PAGE_SIZE)
|
if self.0 == 0 {
|
||||||
|
VirtPageNum(0)
|
||||||
|
} else {
|
||||||
|
VirtPageNum((self.0 - 1 + PAGE_SIZE) / PAGE_SIZE)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
pub fn page_offset(&self) -> usize {
|
pub fn page_offset(&self) -> usize {
|
||||||
self.0 & (PAGE_SIZE - 1)
|
self.0 & (PAGE_SIZE - 1)
|
||||||
@ -126,7 +130,11 @@ impl PhysAddr {
|
|||||||
PhysPageNum(self.0 / PAGE_SIZE)
|
PhysPageNum(self.0 / PAGE_SIZE)
|
||||||
}
|
}
|
||||||
pub fn ceil(&self) -> PhysPageNum {
|
pub fn ceil(&self) -> PhysPageNum {
|
||||||
PhysPageNum((self.0 - 1 + PAGE_SIZE) / PAGE_SIZE)
|
if self.0 == 0 {
|
||||||
|
PhysPageNum(0)
|
||||||
|
} else {
|
||||||
|
PhysPageNum((self.0 - 1 + PAGE_SIZE) / PAGE_SIZE)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
pub fn page_offset(&self) -> usize {
|
pub fn page_offset(&self) -> usize {
|
||||||
self.0 & (PAGE_SIZE - 1)
|
self.0 & (PAGE_SIZE - 1)
|
||||||
|
Loading…
Reference in New Issue
Block a user