From 894e3d83f1a201df81b0f4ccc44acee8bca59d57 Mon Sep 17 00:00:00 2001 From: Zhang Junyu Date: Fri, 19 Jun 2026 05:22:32 +0000 Subject: [PATCH] refine: Remove unused error --- crates/vm-bootloader/src/boot_loader.rs | 13 +++++-------- crates/vm-bootloader/src/initrd_loader.rs | 18 +++++++++--------- .../vm-bootloader/src/kernel_loader/error.rs | 10 +--------- .../src/kernel_loader/linux/aarch64/image.rs | 4 +--- .../src/kernel_loader/linux/x86_64/bzimage.rs | 4 +--- 5 files changed, 17 insertions(+), 32 deletions(-) diff --git a/crates/vm-bootloader/src/boot_loader.rs b/crates/vm-bootloader/src/boot_loader.rs index 7fdebdb..b516dca 100644 --- a/crates/vm-bootloader/src/boot_loader.rs +++ b/crates/vm-bootloader/src/boot_loader.rs @@ -22,18 +22,12 @@ pub mod arch; #[derive(Error, Debug)] pub enum Error { - #[error("Load dtb failed, reason: {0}")] - LoadDtbFailed(String), - #[error("Failed to loader kernel, err: {0}")] KernelLoader(#[from] KernelLoaderError), #[error("Failed to load initrd, err: {0}")] LoadInitrdFailed(#[from] InitrdLoaderError), - #[error("Memory overlap")] - MemoryOverlap, - #[error("Failed to reserve memory, err: {0}")] ReserveMemory(#[from] RangeAllocatorError), @@ -43,12 +37,15 @@ pub enum Error { #[error("{0}")] GenerateDtb(#[from] vm_fdt::Error), - #[error("Vcpu too much")] - VcpuExceedsAcpiCapability, + #[error("Load dtb failed, reason: {0}")] + LoadDtbFailed(String), #[error("Failed to setup acpi, err: {0}")] Acpi(#[from] AcpiError), + #[error("Vcpu too much")] + VcpuExceedsAcpiCapability, + #[error("Failed to setup gdt, err: {0}")] Gdt(String), diff --git a/crates/vm-bootloader/src/initrd_loader.rs b/crates/vm-bootloader/src/initrd_loader.rs index 1f17914..f647e5e 100644 --- a/crates/vm-bootloader/src/initrd_loader.rs +++ b/crates/vm-bootloader/src/initrd_loader.rs @@ -1,5 +1,6 @@ use std::fs; use std::path::Path; +use std::path::PathBuf; use thiserror::Error; use vm_mm::manager::MemoryAddressSpace; @@ -8,11 +9,11 @@ use vm_utils::range_allocator::RangeAllocatorError; #[derive(Error, Debug)] pub enum InitrdLoaderError { - #[error("Read failed")] - ReadFailed, + #[error("Failed to read initramfs from {0}")] + ReadFailed(PathBuf), - #[error("Copy initrd failed")] - CopyFailed, + #[error("Copy initrd failed, err: {0}")] + CopyFailed(#[from] vm_mm::error::Error), #[error("Failed to reserve ram for initramfs, err: {0}")] ReserveRam(#[from] RangeAllocatorError), @@ -29,7 +30,8 @@ pub struct InitrdLoader { impl InitrdLoader { pub fn new(path: &Path) -> Result { - let initrd = fs::read(path).map_err(|_| InitrdLoaderError::ReadFailed)?; + let initrd = + fs::read(path).map_err(|_| InitrdLoaderError::ReadFailed(path.to_path_buf()))?; Ok(InitrdLoader { initrd }) } @@ -40,11 +42,9 @@ impl InitrdLoader { memory: &MemoryAddressSpace, addr: u64, ) -> Result { - ram_allocator.reserve(addr, self.initrd.len()).unwrap(); + ram_allocator.reserve(addr, self.initrd.len())?; - memory - .copy_from_slice(addr, &self.initrd) - .map_err(|_| InitrdLoaderError::CopyFailed)?; + memory.copy_from_slice(addr, &self.initrd)?; Ok(InitrdLoadResult { initrd_start: addr, diff --git a/crates/vm-bootloader/src/kernel_loader/error.rs b/crates/vm-bootloader/src/kernel_loader/error.rs index 0806f7d..34ac614 100644 --- a/crates/vm-bootloader/src/kernel_loader/error.rs +++ b/crates/vm-bootloader/src/kernel_loader/error.rs @@ -1,5 +1,4 @@ use thiserror::Error; -use vm_firmware::acpi::error::AcpiError; use vm_utils::range_allocator::RangeAllocatorError; #[derive(Error, Debug)] @@ -20,7 +19,7 @@ pub enum KernelLoaderError { InvalidAddressAlignment, #[error("Copy kernel into memory failed, reason: {0}")] - CopyKernelFailed(vm_mm::error::Error), + CopyKernelFailed(#[from] vm_mm::error::Error), #[error("Failed to reserve ram, err: {0}")] ReserveRam(#[from] RangeAllocatorError), @@ -33,11 +32,4 @@ pub enum KernelLoaderError { #[error("Cmdline too large")] CmdlineTooLarge, - - #[cfg(target_arch = "x86_64")] - #[error("Copy cmdline into memory failed")] - CopyCmdlineFailed, - - #[error("Acpi error: {0}")] - Acpi(#[from] AcpiError), } diff --git a/crates/vm-bootloader/src/kernel_loader/linux/aarch64/image.rs b/crates/vm-bootloader/src/kernel_loader/linux/aarch64/image.rs index 25e8758..2c007dc 100644 --- a/crates/vm-bootloader/src/kernel_loader/linux/aarch64/image.rs +++ b/crates/vm-bootloader/src/kernel_loader/linux/aarch64/image.rs @@ -83,9 +83,7 @@ impl Image { let kernel_start = boot_params.ram_base + text_offset; ram_allocator.reserve(kernel_start, kernel_len)?; - memory - .copy_from_slice(kernel_start, &self.kernel) - .map_err(KernelLoaderError::CopyKernelFailed)?; + memory.copy_from_slice(kernel_start, &self.kernel)?; Ok(LoadResult { start_pc: kernel_start, diff --git a/crates/vm-bootloader/src/kernel_loader/linux/x86_64/bzimage.rs b/crates/vm-bootloader/src/kernel_loader/linux/x86_64/bzimage.rs index 8c5b4b4..096bc01 100644 --- a/crates/vm-bootloader/src/kernel_loader/linux/x86_64/bzimage.rs +++ b/crates/vm-bootloader/src/kernel_loader/linux/x86_64/bzimage.rs @@ -129,9 +129,7 @@ impl BzImage { let setup_size = (setup_sects as usize + 1) * 0x200; let kernel_len = self.bzimage.len() - setup_size; let range = ram_allocator.reserve(params.kernel_start as u64, kernel_len)?; - memory - .copy_from_slice(range.start, &self.bzimage[setup_size..]) - .map_err(KernelLoaderError::CopyKernelFailed)?; + memory.copy_from_slice(range.start, &self.bzimage[setup_size..])?; } Ok(LoadResult {