Summary: | Superblock check-hash failed | ||
---|---|---|---|
Product: | Base System | Reporter: | Edward Tomasz Napierala <trasz> |
Component: | kern | Assignee: | freebsd-fs (Nobody) <fs> |
Status: | Closed FIXED | ||
Severity: | Affects Only Me | CC: | chris, cragapito, emaste, mckusick |
Priority: | --- | ||
Version: | CURRENT | ||
Hardware: | Any | ||
OS: | Any |
Description
Edward Tomasz Napierala
![]() ![]() I had the same problem, but fsck made my old system unusable trying recover that check-hashes, and worst, it damage my backup disk! I can't mount it because after the messages it gave me 'mount: Integrity check failed'. fsck says that's clean, but I still cant mount (despite messages that it was ignored). I share that backup disk between machines with different versions, but I never even dream about that level of regression next to my 20 year with FreeBSD. I appreciate the attempt to evolve, but I found it rash and irresponsible. Googling I could recover the backup of SB, got by 'newfs -N /dev/da0' at 192 and using 'fsck_ufs -b 192 /dev/da0'. Now it's working. Sorry by my previous message... I have managed to reproduce this problem and I am working on a fix. A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=c0bfa109b942659f609b7e2bf3ba042ec0cb3f9d commit c0bfa109b942659f609b7e2bf3ba042ec0cb3f9d Author: Kirk McKusick <mckusick@FreeBSD.org> AuthorDate: 2022-02-04 19:46:36 +0000 Commit: Kirk McKusick <mckusick@FreeBSD.org> CommitDate: 2022-02-04 19:47:48 +0000 Have fsck_ffs(8) properly correct superblock check-hash failures. Part of the problem was that fsck_ffs would read the superblock multiple times complaining and repairing the superblock check hash each time and then at the end failing to write out the superblock with the corrected check hash. This fix reads the superblock just once and if the check hash is corrected ensures that the fixed superblock gets written. Tested by: Peter Holm PR: 245916 MFC after: 1 week Sponsored by: Netflix sbin/fsck_ffs/fsck.h | 1 + sbin/fsck_ffs/fsutil.c | 4 +- sbin/fsck_ffs/globs.c | 6 +- sbin/fsck_ffs/main.c | 309 +++++++++++++++++++++++++++++++++---------------- sbin/fsck_ffs/setup.c | 182 +++++++---------------------- 5 files changed, 258 insertions(+), 244 deletions(-) Fix added to head. Will close after MFC to 13. A commit in branch stable/13 references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=166926a3dee05875b9cb38356871d9ce07083c0d commit 166926a3dee05875b9cb38356871d9ce07083c0d Author: Kirk McKusick <mckusick@FreeBSD.org> AuthorDate: 2022-02-16 01:09:07 +0000 Commit: Kirk McKusick <mckusick@FreeBSD.org> CommitDate: 2022-02-16 01:14:22 +0000 Have fsck_ffs(8) properly correct superblock check-hash failures. cherry pick cleanups from commit c0bfa109b942659f609b7e2bf3ba042ec0cb3f9d PR: 245916 sbin/fsck_ffs/main.c | 2 +- sbin/fsck_ffs/setup.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) A commit in branch stable/13 references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=efd949aaba7449ae994fe5052178c2ba3efd2e7b commit efd949aaba7449ae994fe5052178c2ba3efd2e7b Author: Kirk McKusick <mckusick@FreeBSD.org> AuthorDate: 2022-02-04 19:46:36 +0000 Commit: Kirk McKusick <mckusick@FreeBSD.org> CommitDate: 2022-02-16 01:14:22 +0000 Have fsck_ffs(8) properly correct superblock check-hash failures. (cherry picked from commit c0bfa109b942659f609b7e2bf3ba042ec0cb3f9d) PR: 245916 sbin/fsck_ffs/fsck.h | 1 + sbin/fsck_ffs/fsutil.c | 4 +- sbin/fsck_ffs/globs.c | 6 +- sbin/fsck_ffs/main.c | 309 +++++++++++++++++++++++++++++++++---------------- sbin/fsck_ffs/setup.c | 182 +++++++---------------------- 5 files changed, 258 insertions(+), 244 deletions(-) Has been MFC'ed to 13 |