From 269fd9abc042a861a1ffd2e6a339676952f3ec0b Mon Sep 17 00:00:00 2001
From: bjorn3 <17426603+bjorn3@users.noreply.github.com>
Date: Sat, 8 Mar 2025 21:41:33 +0100
Subject: [PATCH] storage/lived: Use the unified disk scheme implementation
---
Cargo.lock | 2 +-
storage/driver-block/src/lib.rs | 2 +
storage/lived/Cargo.toml | 2 +-
storage/lived/src/main.rs | 198 ++++++++++----------------------
4 files changed, 66 insertions(+), 138 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
index 9506ce08e1..d024866c9b 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -780,9 +780,9 @@ name = "lived"
version = "0.1.0"
dependencies = [
"anyhow",
+ "driver-block",
"libredox",
"redox-daemon",
- "redox-scheme 0.3.0",
"redox_event",
"redox_syscall",
]
diff --git a/storage/driver-block/src/lib.rs b/storage/driver-block/src/lib.rs
index a60a208847..fa5b4fb22a 100644
--- a/storage/driver-block/src/lib.rs
+++ b/storage/driver-block/src/lib.rs
@@ -69,6 +69,8 @@ pub trait Disk {
fn block_size(&self) -> u32;
fn size(&self) -> u64;
+ // These operate on a whole multiple of the block size
+ // FIXME maybe only operate on a single block worth of data?
fn read(&mut self, block: u64, buffer: &mut [u8]) -> syscall::Result