From 83bb6598dca2dd4ca1948b3635889b2def1f6da9 Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Mon, 5 Sep 2022 11:14:39 +0300 Subject: [PATCH] Fix fsync autodetection for the single-device mode --- src/disk_tool_prepare.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/disk_tool_prepare.cpp b/src/disk_tool_prepare.cpp index b9b60be7..c82788ab 100644 --- a/src/disk_tool_prepare.cpp +++ b/src/disk_tool_prepare.cpp @@ -78,6 +78,18 @@ int disk_tool_t::prepare_one(std::map options, int is_ options["disable_"+dev+"_fsync"] = "1"; } } + if (options["meta_device"] == "" || options["meta_device"] == options["data_device"]) + { + options["disable_meta_fsync"] = options["disable_data_fsync"]; + } + if (options["journal_device"] == "" || options["journal_device"] == options["meta_device"]) + { + options["disable_journal_fsync"] = options["disable_meta_fsync"]; + } + else if (options["journal_device"] == options["data_device"]) + { + options["disable_journal_fsync"] = options["disable_data_fsync"]; + } // Calculate offsets if the same device is used for two or more of data, meta, and journal if (options["journal_size"] == "") {