Index: pass1.c =================================================================== RCS file: /data0/vhost/cvs/usr/home/ncvs/src/sbin/fsck_ffs/pass1.c,v retrieving revision 1.43 diff -u -r1.43 pass1.c --- pass1.c 8 Oct 2004 20:44:47 -0000 1.43 +++ pass1.c 7 Aug 2005 11:08:19 -0000 @@ -93,9 +93,13 @@ inumber = c * sblock.fs_ipg; setinodebuf(inumber); getblk(&cgblk, cgtod(&sblock, c), sblock.fs_cgsize); - if (sblock.fs_magic == FS_UFS2_MAGIC) - inosused = cgrp.cg_initediblk; - else + if (sblock.fs_magic == FS_UFS2_MAGIC) { + if (cgrp.cg_initediblk > cgrp.cg_niblk || + cgrp.cg_initediblk < 0) + inosused = cgrp.cg_niblk; + else + inosused = cgrp.cg_initediblk; + } else inosused = sblock.fs_ipg; if (got_siginfo) { printf("%s: phase 1: cyl group %d of %d (%d%%)\n",