kern/141992: fsck cannot repair file system in which it finds
an error
Kirk McKusick
mckusick at mckusick.com
Thu Jan 7 00:22:15 UTC 2010
So, I have (finally) gotten a chance to try out the disk image that
you sent me using fsck_ffs from a FreeBSD 8.0 system. Here is the
correction report and patch that I made:
Author: mckusick
Date: Thu Jan 7 00:17:36 2010
New Revision: 201700
URL: http://svn.freebsd.org/changeset/base/201700
Log:
This corrects a bug that manifested itself as identifying the last
cylinder group of a UFS1 filesystem as bad. The error was in the check
and not in the cylinder group itself. So even though fsck fixed the
cylinder group correctly, it was still endlessly reported as bad.
PR: 141992
MFC after: 2 weeks
Reported by: Dan Strick
Modified:
head/sbin/fsck_ffs/fsutil.c
Modified: head/sbin/fsck_ffs/fsutil.c
==============================================================================
--- head/sbin/fsck_ffs/fsutil.c Thu Jan 7 00:04:29 2010 (r201699)
+++ head/sbin/fsck_ffs/fsutil.c Thu Jan 7 00:17:36 2010 (r201700)
@@ -436,7 +436,7 @@ check_cgmagic(int cg, struct cg *cgp)
((sblock.fs_magic == FS_UFS1_MAGIC &&
cgp->cg_old_niblk == sblock.fs_ipg &&
cgp->cg_ndblk <= sblock.fs_fpg &&
- cgp->cg_old_ncyl == sblock.fs_old_cpg) ||
+ cgp->cg_old_ncyl <= sblock.fs_old_cpg) ||
(sblock.fs_magic == FS_UFS2_MAGIC &&
cgp->cg_niblk == sblock.fs_ipg &&
cgp->cg_ndblk <= sblock.fs_fpg &&
Please apply this patch to your fsck_ffs and confirm for me that it
corrects your problem. Thanks for all your help.
Kirk McKusick
More information about the freebsd-fs
mailing list