Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit a65533a

Browse filesBrowse files
committed
review
1 parent 4f27700 commit a65533a
Copy full SHA for a65533a

File tree

Expand file treeCollapse file tree

3 files changed

+12
-11
lines changed
Filter options
Expand file treeCollapse file tree

3 files changed

+12
-11
lines changed

‎api/src/info.rs

Copy file name to clipboardExpand all lines: api/src/info.rs
+3-3Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,11 @@ pub struct BootInfo {
5656
pub ramdisk_addr: Optional<u64>,
5757
/// Ramdisk image size, set to 0 if addr is None
5858
pub ramdisk_len: u64,
59-
/// Kernel image address
59+
/// Physical address of the kernel ELF in memory.
6060
pub kernel_addr: u64,
61-
/// Kernel image size
61+
/// Size of the kernel ELF in memory.
6262
pub kernel_len: u64,
63-
/// Kernel image relocation address
63+
/// Virtual address of the loaded kernel image.
6464
pub kernel_image_offset: u64,
6565

6666
#[doc(hidden)]

‎common/src/legacy_memory_region.rs

Copy file name to clipboardExpand all lines: common/src/legacy_memory_region.rs
+2-1Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,10 +110,11 @@ where
110110
pub fn construct_memory_map(
111111
self,
112112
regions: &mut [MaybeUninit<MemoryRegion>],
113-
kernel_slice_start: u64,
113+
kernel_slice_start: PhysAddr,
114114
kernel_slice_len: u64,
115115
) -> &mut [MemoryRegion] {
116116
let mut next_index = 0;
117+
let kernel_slice_start = kernel_slice_start.as_u64();
117118

118119
for descriptor in self.original {
119120
let mut start = descriptor.start();

‎common/src/lib.rs

Copy file name to clipboardExpand all lines: common/src/lib.rs
+7-7Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ where
195195
enable_write_protect_bit();
196196

197197
let config = kernel.config;
198-
let kernel_slice_start = kernel.start_address as u64;
198+
let kernel_slice_start = PhysAddr::new(kernel.start_address as _);
199199
let kernel_slice_len = u64::try_from(kernel.len).unwrap();
200200

201201
let (kernel_image_offset, entry_point, tls_template) = load_kernel::load_kernel(
@@ -402,7 +402,7 @@ where
402402

403403
kernel_slice_start,
404404
kernel_slice_len,
405-
kernel_image_offset: kernel_image_offset.as_u64(),
405+
kernel_image_offset,
406406

407407
ramdisk_slice_start,
408408
ramdisk_slice_len,
@@ -428,11 +428,11 @@ pub struct Mappings {
428428
pub tls_template: Option<TlsTemplate>,
429429

430430
/// Start address of the kernel slice allocation in memory.
431-
pub kernel_slice_start: u64,
431+
pub kernel_slice_start: PhysAddr,
432432
/// Size of the kernel slice allocation in memory.
433433
pub kernel_slice_len: u64,
434-
/// Start address of the kernel image relocated in memory.
435-
pub kernel_image_offset: u64,
434+
/// Relocation offset of the kernel image in virtual memory.
435+
pub kernel_image_offset: VirtAddr,
436436
pub ramdisk_slice_start: Option<VirtAddr>,
437437
pub ramdisk_slice_len: u64,
438438
}
@@ -547,9 +547,9 @@ where
547547
.map(|addr| addr.as_u64())
548548
.into();
549549
info.ramdisk_len = mappings.ramdisk_slice_len;
550-
info.kernel_addr = mappings.kernel_slice_start as _;
550+
info.kernel_addr = mappings.kernel_slice_start.as_u64();
551551
info.kernel_len = mappings.kernel_slice_len as _;
552-
info.kernel_image_offset = mappings.kernel_image_offset;
552+
info.kernel_image_offset = mappings.kernel_image_offset.as_u64();
553553
info._test_sentinel = boot_config._test_sentinel;
554554
info
555555
});

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.