diff --git a/crates/ecstore/src/disk/local.rs b/crates/ecstore/src/disk/local.rs
index e9cdd5be3..34382f429 100644
--- a/crates/ecstore/src/disk/local.rs
+++ b/crates/ecstore/src/disk/local.rs
@@ -15729,7 +15729,7 @@ mod test {
assert!(slots[0][0][1].is_some());
drop(slots);
drop(entries);
- let (disks, errors) = crate::store::init_format::init_disks(&endpoints, &options).await;
+ let (disks, errors) = crate::store::init_format::init_disks(&ctx, &endpoints, &options).await;
assert!(disks[0].is_none());
assert!(disks[1].is_some());
assert_eq!(errors[0], Some(DiskError::FileAccessDenied));
diff --git a/crates/ecstore/src/store/init.rs b/crates/ecstore/src/store/init.rs
index e60297250..e0031ca06 100644
--- a/crates/ecstore/src/store/init.rs
+++ b/crates/ecstore/src/store/init.rs
@@ -540,6 +540,7 @@ impl ECStore {
// failures can still spawn recovery probes for peers that come up
// after this node.
let (mut disks, errs) = init_format::init_disks(
+ &instance_ctx,
&pool_eps.endpoints,
&DiskOption {
cleanup: true,
diff --git a/crates/ecstore/src/store/init_format.rs b/crates/ecstore/src/store/init_format.rs
index 8de59ec40..c93d17612 100644
--- a/crates/ecstore/src/store/init_format.rs
+++ b/crates/ecstore/src/store/init_format.rs
@@ -44,12 +44,32 @@ const LEGACY_FORMAT_READ_CONCURRENCY: usize = 16;
const LEGACY_FORMAT_BASE_MAX_BYTES: usize = 16 * 1024;
const LEGACY_FORMAT_MAX_BYTES_PER_DISK: usize = 64;
-pub async fn init_disks(eps: &Endpoints, opt: &DiskOption) -> (Vec