diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2020-03-02 17:10:54 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2020-03-02 17:10:54 -0500 |
commit | 2d238045d3a7262c4ba58da7eeedbc4a0df5b59f (patch) | |
tree | 8831965bc5bbc3200ab573b4e689ba3ab75877d1 /libbcachefs/buckets.c | |
parent | 14e736e62757706afd6f451118cad7f34e5766da (diff) |
Update bcachefs sources to 4a4139a563 bcachefs: Fix extent_sort_fix_overlapping()
Diffstat (limited to 'libbcachefs/buckets.c')
-rw-r--r-- | libbcachefs/buckets.c | 10 |
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; |