From b78f526696134132740fe8be1413027ca17db2eb Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Sun, 14 Dec 2025 14:44:27 +0000 Subject: [PATCH] Clear only the first OSD metadata and journal blocks - it anyway clears the rest --- src/disk_tool/disk_tool_prepare.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/disk_tool/disk_tool_prepare.cpp b/src/disk_tool/disk_tool_prepare.cpp index d9ab7359..3aa39254 100644 --- a/src/disk_tool/disk_tool_prepare.cpp +++ b/src/disk_tool/disk_tool_prepare.cpp @@ -266,9 +266,9 @@ int disk_tool_t::prepare_one(std::map options, int is_ return 1; } } - // Zero out metadata and journal - if (write_zero(dsk.meta_fd, sb["meta_offset"].uint64_value(), dsk.meta_area_size) != 0 || - write_zero(dsk.journal_fd, sb["journal_offset"].uint64_value(), dsk.journal_len) != 0) + // Zero out the first block of metadata and journal - OSD will zero the rest on the first run + if (write_zero(dsk.meta_fd, sb["meta_offset"].uint64_value(), 4096) != 0 || + write_zero(dsk.journal_fd, sb["journal_offset"].uint64_value(), 4096) != 0) { fprintf(stderr, "Failed to zero out metadata or journal: %s\n", strerror(errno)); dsk.close_all();