[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240705-b4-rst-updates-v4-7-f3eed3f2cfad@kernel.org>
Date: Fri, 05 Jul 2024 17:13:53 +0200
From: Johannes Thumshirn <jth@...nel.org>
To: Chris Mason <clm@...com>, Josef Bacik <josef@...icpanda.com>,
David Sterba <dsterba@...e.com>
Cc: linux-btrfs@...r.kernel.org, linux-kernel@...r.kernel.org,
Johannes Thumshirn <johannes.thumshirn@....com>
Subject: [PATCH v4 7/7] btrfs: stripe-tree: also look at commit root on
relocation
From: Johannes Thumshirn <johannes.thumshirn@....com>
When doing reads on a raid stripe tree enabled system while relocation
is ongoinig, also look at the commit root. The data we're interested
in could've just been relocated to another place in the current
transaction.
Signed-off-by: Johannes Thumshirn <johannes.thumshirn@....com>
---
fs/btrfs/bio.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/fs/btrfs/bio.c b/fs/btrfs/bio.c
index 5f36c75a2457..948509ac343e 100644
--- a/fs/btrfs/bio.c
+++ b/fs/btrfs/bio.c
@@ -679,7 +679,8 @@ static bool btrfs_submit_chunk(struct btrfs_bio *bbio, int mirror_num)
blk_status_t ret;
int error;
- smap.commit_root = !bbio->inode;
+ smap.commit_root = !bbio->inode ||
+ btrfs_is_data_reloc_root(inode->root);
btrfs_bio_counter_inc_blocked(fs_info);
error = btrfs_map_block(fs_info, btrfs_op(bio), logical, &map_length,
--
2.43.0
Powered by blists - more mailing lists