At restore time, btrfs-image will try to fixup dev extents, this will
trigger a transaction.
It's normally OK to start a new transaction, but for image with log
tree, a new transaction will bump up generation, and log tree generation
will not match with super block generation + 1.
There is no good way to solve it yet. Just output a warning for now.
Signed-off-by: Qu Wenruo <wqu@xxxxxxxx>
---
image/main.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/image/main.c b/image/main.c
index 351c5a256938..40fe406d8a33 100644
--- a/image/main.c
+++ b/image/main.c
@@ -2093,6 +2093,10 @@ static int fixup_devices(struct btrfs_fs_info *fs_info,
u64 devid, cur_devid;
int ret;
+ if (btrfs_super_log_root(fs_info->super_copy)) {
+ warning(
+ "log tree detected, log tree generation will be suspicious");
+ }
trans = btrfs_start_transaction(fs_info->tree_root, 1);
if (IS_ERR(trans)) {
error("cannot starting transaction %ld", PTR_ERR(trans));
--
2.19.0