diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2018-03-01 18:32:53 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2018-03-01 18:32:53 -0500 |
commit | da224776eb43b7a47d8c7cd9314d5d1a8e97aabe (patch) | |
tree | 1aa743061fd372dc24c5bcd09715f31234e1b7c3 | |
parent | c7fd0dff979ba04bbaa991ad506cb270df296c2a (diff) |
bcachefs: fix an error path
-rw-r--r-- | fs/bcachefs/btree_io.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/bcachefs/btree_io.c b/fs/bcachefs/btree_io.c index 22b46e5cd5fc..0525c3b87f95 100644 --- a/fs/bcachefs/btree_io.c +++ b/fs/bcachefs/btree_io.c @@ -1192,7 +1192,6 @@ int bch2_btree_node_read_done(struct bch_fs *c, struct btree *b, bool have_retry sectors = vstruct_sectors(b->data, c->block_bits); - set_btree_bset(b, b->set, &b->data->keys); btree_node_set_format(b, b->data->format); } else { bne = write_block(b); @@ -1258,6 +1257,8 @@ int bch2_btree_node_read_done(struct bch_fs *c, struct btree *b, bool have_retry sorted = btree_bounce_alloc(c, btree_page_order(c), &used_mempool); sorted->keys.u64s = 0; + set_btree_bset(b, b->set, &b->data->keys); + b->nr = btree_node_is_extents(b) ? bch2_extent_sort_fix_overlapping(c, &sorted->keys, b, iter) : bch2_key_sort_fix_overlapping(&sorted->keys, b, iter); |