From e8f5d1ca66d8e190d2ba1669b9f01c2c58f32e5b Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Fri, 30 Aug 2019 20:48:24 +0200 Subject: [PATCH] bfs: erase ext2 superblock when initializing Having valid superblocks from multiple filesystems on the same disk is confusing, let's try to avoid that. Change-Id: I1a58843d45ea52193a77faaf8dcc3ca6a049406e Reviewed-on: https://review.haiku-os.org/c/haiku/+/1802 Reviewed-by: waddlesplash --- src/add-ons/kernel/file_systems/bfs/Volume.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/add-ons/kernel/file_systems/bfs/Volume.cpp b/src/add-ons/kernel/file_systems/bfs/Volume.cpp index ca3241fd24..2b06068c3f 100644 --- a/src/add-ons/kernel/file_systems/bfs/Volume.cpp +++ b/src/add-ons/kernel/file_systems/bfs/Volume.cpp @@ -828,8 +828,12 @@ Volume::_EraseUnusedBootBlock() { const int32 blockSize = 512; const char emptySector[blockSize] = { 0 }; + // Erase boot block if any if (write_pos(fDevice, 0, emptySector, blockSize) != blockSize) return B_IO_ERROR; + // Erase ext2 superblock if any + if (write_pos(fDevice, 1024, emptySector, blockSize) != blockSize) + return B_IO_ERROR; return B_OK; }