]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
bcachefs: Fix btree_path->uptodate inconsistency
authorKent Overstreet <kent.overstreet@gmail.com>
Thu, 11 Aug 2022 17:23:04 +0000 (13:23 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:09:38 +0000 (17:09 -0400)
This fixes an assertion in bch2_btree_path_peek_slot().

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
fs/bcachefs/btree_update_leaf.c

index 2d824f6a6fab9c43402b400e669c8a3fb7c2c440..1371b7c6ff8b109f7eee4d42ab2e9455a984bc3a 100644 (file)
@@ -726,8 +726,10 @@ bch2_trans_commit_write_locked(struct btree_trans *trans,
                        btree_insert_key_leaf(trans, i);
                else if (!i->key_cache_already_flushed)
                        bch2_btree_insert_key_cached(trans, i->path, i->k);
-               else
+               else {
                        bch2_btree_key_cache_drop(trans, i->path);
+                       btree_path_set_dirty(i->path, BTREE_ITER_NEED_TRAVERSE);
+               }
        }
 
        return ret;