summaryrefslogtreecommitdiff
path: root/libbcachefs/buckets.c
diff options
context:
space:
mode:
Diffstat (limited to 'libbcachefs/buckets.c')
-rw-r--r--libbcachefs/buckets.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libbcachefs/buckets.c b/libbcachefs/buckets.c
index 8af0dd02..de57e625 100644
--- a/libbcachefs/buckets.c
+++ b/libbcachefs/buckets.c
@@ -674,6 +674,10 @@ static int check_bucket_ref(struct bch_fs *c,
if (bucket_data_type == BCH_DATA_cached)
bucket_data_type = BCH_DATA_user;
+ if ((bucket_data_type == BCH_DATA_stripe && ptr_data_type == BCH_DATA_user) ||
+ (bucket_data_type == BCH_DATA_user && ptr_data_type == BCH_DATA_stripe))
+ bucket_data_type = ptr_data_type = BCH_DATA_stripe;
+
if (gen_after(ptr->gen, b_gen)) {
bch2_fsck_err(c, FSCK_CAN_IGNORE|FSCK_NEED_FSCK,
"bucket %u:%zu gen %u data type %s: ptr gen %u newer than bucket gen\n"