summaryrefslogtreecommitdiff
path: root/libbcachefs/buckets.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2020-03-02 17:10:54 -0500
committerKent Overstreet <kent.overstreet@gmail.com>2020-03-02 17:10:54 -0500
commit2d238045d3a7262c4ba58da7eeedbc4a0df5b59f (patch)
tree8831965bc5bbc3200ab573b4e689ba3ab75877d1 /libbcachefs/buckets.c
parent14e736e62757706afd6f451118cad7f34e5766da (diff)
Update bcachefs sources to 4a4139a563 bcachefs: Fix extent_sort_fix_overlapping()
Diffstat (limited to 'libbcachefs/buckets.c')
-rw-r--r--libbcachefs/buckets.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/libbcachefs/buckets.c b/libbcachefs/buckets.c
index b9bc524f..61831a49 100644
--- a/libbcachefs/buckets.c
+++ b/libbcachefs/buckets.c
@@ -1444,8 +1444,7 @@ static int bch2_trans_mark_pointer(struct btree_trans *trans,
struct bkey_s_c k;
struct bkey_alloc_unpacked u;
struct bkey_i_alloc *a;
- u16 *dst_sectors;
- bool overflow;
+ u16 *dst_sectors, orig_sectors;
int ret;
ret = trans_get_key(trans, BTREE_ID_ALLOC,
@@ -1502,13 +1501,12 @@ static int bch2_trans_mark_pointer(struct btree_trans *trans,
dst_sectors = !p.ptr.cached
? &u.dirty_sectors
: &u.cached_sectors;
+ orig_sectors = *dst_sectors;
- overflow = checked_add(*dst_sectors, sectors);
-
- if (overflow) {
+ if (checked_add(*dst_sectors, sectors)) {
bch2_fs_inconsistent(c,
"bucket sector count overflow: %u + %lli > U16_MAX",
- *dst_sectors, sectors);
+ orig_sectors, sectors);
/* return an error indicating that we need full fsck */
ret = -EIO;
goto out;