diff --git a/kernel/src/objects/cnode.rs b/kernel/src/objects/cnode.rs index ec0645d..2935789 100644 --- a/kernel/src/objects/cnode.rs +++ b/kernel/src/objects/cnode.rs @@ -3,7 +3,7 @@ use super::{ Cap, KernelObject, }; use crate::arch::layout::mmap_phys_to_virt; -use uapi::{cap::ObjectType, error::CapFault}; +use uapi::{cap::ObjectType, fault::LookupFailure}; use utils::addr::{AddressOps, PhysAddr}; use utils::MASK; @@ -89,7 +89,7 @@ impl<'a> CNodeCap<'a> { } } - pub fn resolve_address_bits(&self, cap_ptr: usize, n_bits: usize) -> Result<&CapEntry, CapFault> { + pub fn resolve_address_bits(&self, cap_ptr: usize, n_bits: usize) -> Result<&CapEntry, LookupFailure> { let mut bits_remaining = n_bits; let mut slot = self.cte; @@ -102,7 +102,7 @@ impl<'a> CNodeCap<'a> { assert_ne!(level_bits, 0); if level_bits > bits_remaining { - return Err(CapFault::DepthMismatch { + return Err(LookupFailure::DepthMismatch { bits_found: level_bits, bits_left: bits_remaining, }); @@ -110,7 +110,7 @@ impl<'a> CNodeCap<'a> { let get_guard = || (cap_ptr >> (bits_remaining - guard_bits)) & MASK!(guard_bits); if guard_bits > bits_remaining || get_guard() != cap_guard { - return Err(CapFault::GuardMismatch { + return Err(LookupFailure::GuardMismatch { bits_left: bits_remaining, guard_found: cap_guard, guard_size: guard_bits, @@ -128,7 +128,7 @@ impl<'a> CNodeCap<'a> { } if CNodeCap::try_from(slot).is_err() { - return Err(CapFault::InvalidRoot); + return Err(LookupFailure::InvalidRoot); } Ok(slot) } @@ -227,7 +227,7 @@ mod tests { info!("Testing invalid depth (1)"); let result = root.resolve_address_bits(0x96, 8 - 1); match result { - Err(CapFault::DepthMismatch { bits_found, bits_left }) => { + Err(LookupFailure::DepthMismatch { bits_found, bits_left }) => { assert_eq!(bits_found, 8); assert_eq!(bits_left, 7); }, @@ -240,7 +240,7 @@ mod tests { info!("Testing invalid depth (2)"); let result = root.resolve_address_bits(0x4b31 >> 1, 15 - 1); match result { - Err(CapFault::DepthMismatch { bits_found, bits_left }) => { + Err(LookupFailure::DepthMismatch { bits_found, bits_left }) => { assert_eq!(bits_found, 7); assert_eq!(bits_left, 6); }, @@ -255,7 +255,7 @@ mod tests { info!("Testing guard mismatch"); let result = root.resolve_address_bits(0x4b71, 15); match result { - Err(CapFault::GuardMismatch { + Err(LookupFailure::GuardMismatch { bits_left, guard_found, guard_size, @@ -273,7 +273,7 @@ mod tests { info!("Testing extra bits"); let result = root.resolve_address_bits(0x96 << 1, 8 + 1); match result { - Err(CapFault::DepthMismatch { bits_found, bits_left }) => { + Err(LookupFailure::DepthMismatch { bits_found, bits_left }) => { assert_eq!(bits_found, 7); assert_eq!(bits_left, 1); },