Subject: fsck claims missing blocks erroneously
Index:	etc/fsck/pass1.c 2.11BSD

Description:
	'fsck' erroneously reports "BLK(S) MISSING" on file systems
	after the first one checked.

Repeat-By:
	Run 'fsck' without specifying a particular filesystem
	(let 'fsck' do all of the filesystems in /etc/fstab)
	on a system with multiple filesystems.  Note that the
	'root' filesystem will not cause the "BLK(S) MISSING"
	error, but that all succeeding filesystems will have
	blocks reported as missing.

Fix:
	The problem was that 'fsck' was not clearing the counter
	of free blocks between filesystems.

	Apply the following patch to 'fsck', recompile and install
	'fsck'.
------------------------------------------------------------------
*** /usr/src/etc/fsck/pass1.c.old	Wed Dec 19 13:27:19 1990
--- /usr/src/etc/fsck/pass1.c	Mon Nov 18 16:35:44 1991
***************
*** 35,41 ****
  	bzero((char *)&idesc, sizeof(struct inodesc));
  	idesc.id_type = ADDR;
  	idesc.id_func = pass1check;
! 	n_files = n_blks = 0;
  	for (inumber = ROOTINO; inumber < imax; inumber++) {
  		dp = ginode(inumber);
  		if (!ALLOC(dp)) {
--- 35,41 ----
  	bzero((char *)&idesc, sizeof(struct inodesc));
  	idesc.id_type = ADDR;
  	idesc.id_func = pass1check;
! 	n_files = n_blks = n_free = 0;
  	for (inumber = ROOTINO; inumber < imax; inumber++) {
  		dp = ginode(inumber);
  		if (!ALLOC(dp)) {
