notes@isucs1.UUCP (10/29/84)
After having several crashes in the area of _iget() in the kernel, I did a pstat on the inode list. We seem to accumulate inodes with very large reference counts. Apparantly the inode count is being decremented past zero. These inodes sometimes have their links messed up and that is what causes the system to crash. Does anybody else have this problem and is there a fix? We are running 4.2BSD on a VAX 11/730, but I have also seen the bad inodes on a VAX 11/780 running 4.2BSD. Pstat reports the link count to be 255, but it is actually 65535 as pstat trucates to byte size for output. % pstat -i 68/212 active inodes LOC FLAGS CNT DEVICE RDC WRC INO MODE NLK UID SIZE/DEV 80103540 24 11, 0 0 0 2 41ed 15 0 1024 80103690 T 1 11, 0 0 0 41 81ed 1 0 13312 (Intervening entries deleted) 80105a00 255 11, 7 0 0 16379 41ed 2 6 512 (Intervening entries deleted) After seeing this from pstat, I used adb to look at the inode. Adb reports that the count is negative(rolled over). % adb -k /vmunix /dev/mem sbr 80022c64 slr 19dc p0br 802a9200 p0lr c4 p1br 7faa9600 p1lr 1ffff2 80105a00$<inode 80105a00: forw back 80105418 80109d98 80105a08: flag count min maj shc exc ino 0 -1 07 013 0 0 16379 80105a18: fs dquot 800c1400 8011a4f4 80105a20: lastr freef freeb 0 0 0 80105a28: mode links uid gid size 040755 2 6 10 512 80105a38: atime 1984 Oct 11 12:24:23 mtime 1984 Oct 23 16:43:16 ctime 1984 Oct 23 16:43:16 80105a50: addresses 80105a50: 882a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 80105a8c: flags 0 As a final note, the system was initially running near the max users limit. After I recompilied the system for five times as many users the number of these corrupted inodes went down, but now I waste memory that I can't afford. Please help as we only get about 8 days to a crash. Jon Allen Iowa State Universiy ...umn-cs!isucs1!EXNET!s1allen