summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2018-07-14 19:23:11 -0400
committerKent Overstreet <kent.overstreet@gmail.com>2018-07-16 03:46:14 -0400
commitaaf424e24d6e96750317000db50e8bef4f7f6aba (patch)
treeffbf9fffeea5966c313a710ea6b07825231bbaf3
parent0a592b4469359789ce7f610d42fad90b921f449f (diff)
bcachefs: trivial optimization for fewer transaction restarts
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
-rw-r--r--fs/bcachefs/fs-io.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/bcachefs/fs-io.c b/fs/bcachefs/fs-io.c
index 9e78798a4d08..b48ef7132695 100644
--- a/fs/bcachefs/fs-io.c
+++ b/fs/bcachefs/fs-io.c
@@ -416,6 +416,11 @@ static int bchfs_write_index_update(struct bch_write_op *wop)
op->inode->ei_inode.bi_size)
hook.need_inode_update = true;
+ /* optimization for fewer transaction restarts: */
+ ret = bch2_btree_iter_traverse(&extent_iter);
+ if (ret)
+ goto err;
+
if (hook.need_inode_update) {
struct bkey_s_c inode;