From 251ea035fa2338db7b001af338d65875a9bc65ad Mon Sep 17 00:00:00 2001 From: Nathan Ringo Date: Tue, 27 Aug 2024 00:20:19 -0500 Subject: Adds a free-list for physical memory. --- kernel/src/util.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'kernel/src/util.rs') diff --git a/kernel/src/util.rs b/kernel/src/util.rs index 29042c8..dbcb228 100644 --- a/kernel/src/util.rs +++ b/kernel/src/util.rs @@ -1,6 +1,6 @@ //! Miscellaneous utilities. -use core::mem::size_of; +use core::{mem::size_of, ops::Range}; #[cold] #[inline(always)] @@ -51,6 +51,11 @@ macro_rules! dbg { }; } +/// Returns whether the two ranges overlap. +pub fn ranges_overlap(r1: &Range, r2: &Range) -> bool { + r1.start.max(r2.start) < r1.end.min(r2.end) +} + /// A trait for types that can be converted to from big-endian or little-endian byte slices. pub trait FromEndianBytes { /// Converts from a big-endian byte slice. -- cgit v1.2.3