diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2021-04-28 23:49:30 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-22 17:09:06 -0400 |
commit | 59ba21d99fc7a19d32fc4c2cb21509b8876d8e01 (patch) | |
tree | 850853ae1082de0d8a6c00698a795bd9945dca41 /fs/bcachefs/extents.h | |
parent | cd8319fdd91a600594b2edb6c6eed65dc74354c8 (diff) | |
download | lwn-59ba21d99fc7a19d32fc4c2cb21509b8876d8e01.tar.gz lwn-59ba21d99fc7a19d32fc4c2cb21509b8876d8e01.zip |
bcachefs: Clean up key merging
This patch simplifies the key merging code by getting rid of partial
merges - it's simpler and saner if we just don't merge extents when
they'd overflow k->size.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Diffstat (limited to 'fs/bcachefs/extents.h')
-rw-r--r-- | fs/bcachefs/extents.h | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/bcachefs/extents.h b/fs/bcachefs/extents.h index 9999805f955e..3f6224f75ce8 100644 --- a/fs/bcachefs/extents.h +++ b/fs/bcachefs/extents.h @@ -394,8 +394,7 @@ void bch2_btree_ptr_v2_compat(enum btree_id, unsigned, unsigned, const char *bch2_extent_invalid(const struct bch_fs *, struct bkey_s_c); void bch2_extent_to_text(struct printbuf *, struct bch_fs *, struct bkey_s_c); -enum merge_result bch2_extent_merge(struct bch_fs *, - struct bkey_s, struct bkey_s); +bool bch2_extent_merge(struct bch_fs *, struct bkey_s, struct bkey_s_c); #define bch2_bkey_ops_extent (struct bkey_ops) { \ .key_invalid = bch2_extent_invalid, \ @@ -409,8 +408,7 @@ enum merge_result bch2_extent_merge(struct bch_fs *, const char *bch2_reservation_invalid(const struct bch_fs *, struct bkey_s_c); void bch2_reservation_to_text(struct printbuf *, struct bch_fs *, struct bkey_s_c); -enum merge_result bch2_reservation_merge(struct bch_fs *, - struct bkey_s, struct bkey_s); +bool bch2_reservation_merge(struct bch_fs *, struct bkey_s, struct bkey_s_c); #define bch2_bkey_ops_reservation (struct bkey_ops) { \ .key_invalid = bch2_reservation_invalid, \ |