diff --git a/fs/bcachefs/move.c b/fs/bcachefs/move.c index bf68ea49447b..1768d46980e9 100644 --- a/fs/bcachefs/move.c +++ b/fs/bcachefs/move.c @@ -983,7 +983,7 @@ static bool bformat_needs_redo(struct bkey_format *f) if ((f->bits_per_field[i] == unpacked_bits) && field_offset) return true; - if (((field_offset + ((1ULL << f->bits_per_field[i]) - 1)) & + if (((field_offset + (1ULL << (f->bits_per_field[i] - 1))) & unpacked_mask) < field_offset) return true;