6.11 had a bug where we'd sometimes create disk accounting keys with
version 0, which causes issues for journal replay - but we don't need to
delete existing accounting keys with version 0.

Signed-off-by: Kent Overstreet <[email protected]>
---
 fs/bcachefs/disk_accounting.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/bcachefs/disk_accounting.c b/fs/bcachefs/disk_accounting.c
index bb5dbbf71d04..c5e61265b709 100644
--- a/fs/bcachefs/disk_accounting.c
+++ b/fs/bcachefs/disk_accounting.c
@@ -134,7 +134,8 @@ int bch2_accounting_validate(struct bch_fs *c, struct 
bkey_s_c k,
        void *end = &acc_k + 1;
        int ret = 0;
 
-       bkey_fsck_err_on(bversion_zero(k.k->bversion),
+       bkey_fsck_err_on((flags & BCH_VALIDATE_commit) &&
+                        bversion_zero(k.k->bversion),
                         c, accounting_key_version_0,
                         "accounting key with version=0");
 
-- 
2.45.2


Reply via email to