diff --git a/fs/bcachefs/alloc_background.c b/fs/bcachefs/alloc_background.c index 3f0e2dd29fde037d7974993870da3bcbb1372508..390b008b0200f025335f2ba37ab142952d73b337 100644 --- a/fs/bcachefs/alloc_background.c +++ b/fs/bcachefs/alloc_background.c @@ -84,7 +84,8 @@ const char *bch2_alloc_invalid(const struct bch_fs *c, struct bkey_s_c k) case BCH_ALLOC: { struct bkey_s_c_alloc a = bkey_s_c_to_alloc(k); - if (bch_alloc_val_u64s(a.v) != bkey_val_u64s(a.k)) + /* allow for unknown fields */ + if (bkey_val_u64s(a.k) < bch_alloc_val_u64s(a.v)) return "incorrect value size"; break; }