1d52622861
<QUOTE> Overflow of cg_niblk causes spurious "SUMMARY INFORMATION BAD" warnings prompts in fsck_ffs. cg_niblk has type int16_t, but it is (ab)used to hold the number of inodes per group (it has nothing to do with the number of inode blocks in the cg as claimed in ffs/fs.h), and there can be lots of inodes per group. E.g., newfs -i 8192 -b 16384 -f 16384 -c 255 ... gives 0xA900 inodes/group. Assignment of this to cg_niblk gives -0x5700. This is mostly harmless (ufs/ffs doesn't use cg_niblk, and bug-for-bug compatible overflow occurs in newfs), but in fsck_ffs/pass5.c, negative values of cg_niblk limit cg_irotor to 0 and the summary info appears to be bad. </QUOTE> Submitted by: Bruce Evans <bde@zeta.org.au> Obtained from: Kirk McKusick <mckusick@mckusick.com> |
||
---|---|---|
.. | ||
dir.c | ||
fsck_ifs.8 | ||
fsck.h | ||
fsutil.c | ||
inode.c | ||
main.c | ||
Makefile | ||
pass1.c | ||
pass1b.c | ||
pass2.c | ||
pass3.c | ||
pass4.c | ||
pass5.c | ||
preen.c | ||
setup.c | ||
utilities.c |