mirror of
https://github.com/torvalds/linux.git
synced 2024-11-21 19:41:42 +00:00
bcachefs: Fix assertion pop in topology repair
Fixes: baefd3f849
("bcachefs: btree_cache.freeable list fixes")
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
parent
bcf77a05fb
commit
0b6ec0c5ac
@ -182,7 +182,7 @@ static int set_node_max(struct bch_fs *c, struct btree *b, struct bpos new_max)
|
|||||||
bch2_btree_node_drop_keys_outside_node(b);
|
bch2_btree_node_drop_keys_outside_node(b);
|
||||||
|
|
||||||
mutex_lock(&c->btree_cache.lock);
|
mutex_lock(&c->btree_cache.lock);
|
||||||
bch2_btree_node_hash_remove(&c->btree_cache, b);
|
__bch2_btree_node_hash_remove(&c->btree_cache, b);
|
||||||
|
|
||||||
bkey_copy(&b->key, &new->k_i);
|
bkey_copy(&b->key, &new->k_i);
|
||||||
ret = __bch2_btree_node_hash_insert(&c->btree_cache, b);
|
ret = __bch2_btree_node_hash_insert(&c->btree_cache, b);
|
||||||
|
@ -2398,7 +2398,8 @@ static int __bch2_btree_node_update_key(struct btree_trans *trans,
|
|||||||
if (new_hash) {
|
if (new_hash) {
|
||||||
mutex_lock(&c->btree_cache.lock);
|
mutex_lock(&c->btree_cache.lock);
|
||||||
bch2_btree_node_hash_remove(&c->btree_cache, new_hash);
|
bch2_btree_node_hash_remove(&c->btree_cache, new_hash);
|
||||||
bch2_btree_node_hash_remove(&c->btree_cache, b);
|
|
||||||
|
__bch2_btree_node_hash_remove(&c->btree_cache, b);
|
||||||
|
|
||||||
bkey_copy(&b->key, new_key);
|
bkey_copy(&b->key, new_key);
|
||||||
ret = __bch2_btree_node_hash_insert(&c->btree_cache, b);
|
ret = __bch2_btree_node_hash_insert(&c->btree_cache, b);
|
||||||
|
Loading…
Reference in New Issue
Block a user