diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2021-03-04 19:06:26 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-22 17:08:55 -0400 |
commit | 7d6f07edc28c3c34bad7e6a92921e3fbf8c8dd4e (patch) | |
tree | 395f866b3f9dd9b2fb49923160c3fe12dfc495cb /fs/bcachefs/recovery.c | |
parent | 61a19ce4255abd1133d4e7cd64a6cfa40d1f37fa (diff) | |
download | lwn-7d6f07edc28c3c34bad7e6a92921e3fbf8c8dd4e.tar.gz lwn-7d6f07edc28c3c34bad7e6a92921e3fbf8c8dd4e.zip |
bcachefs: Fix compat code for superblock
The bkey compat code wasn't being run for btree roots in the superblock
clean section - this patch fixes it to use the journal entry validate
code.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/recovery.c')
-rw-r--r-- | fs/bcachefs/recovery.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/fs/bcachefs/recovery.c b/fs/bcachefs/recovery.c index b68fcd1d19e4..11d4894b3d63 100644 --- a/fs/bcachefs/recovery.c +++ b/fs/bcachefs/recovery.c @@ -908,9 +908,11 @@ static struct bch_sb_field_clean *read_superblock_clean(struct bch_fs *c) return ERR_PTR(-ENOMEM); } - if (le16_to_cpu(c->disk_sb.sb->version) < - bcachefs_metadata_version_bkey_renumber) - bch2_sb_clean_renumber(clean, READ); + ret = bch2_sb_clean_validate(c, clean, READ); + if (ret) { + mutex_unlock(&c->sb_lock); + return ERR_PTR(ret); + } mutex_unlock(&c->sb_lock); |