diff -urN -x *.orig -x *~ linux-2.2.14.orig/fs/affs/super.c linux/fs/affs/super.c
--- linux-2.2.14.orig/fs/affs/super.c	Mon Mar  8 00:25:23 1999
+++ linux/fs/affs/super.c	Thu Jan 13 10:31:40 2000
@@ -676,8 +676,8 @@
 	tmp.f_blocks  = sb->u.affs_sb.s_partition_size - sb->u.affs_sb.s_reserved;
 	tmp.f_bfree   = free;
 	tmp.f_bavail  = free;
-	tmp.f_files   = 0;
-	tmp.f_ffree   = 0;
+	tmp.f_files   = -1;
+	tmp.f_ffree   = -1;
 	return copy_to_user(buf,&tmp,bufsiz) ? -EFAULT : 0;
 }
 
diff -urN -x *.orig -x *~ linux-2.2.14.orig/fs/autofs/inode.c linux/fs/autofs/inode.c
--- linux-2.2.14.orig/fs/autofs/inode.c	Tue Jan 12 00:03:30 1999
+++ linux/fs/autofs/inode.c	Thu Jan 13 10:32:14 2000
@@ -283,11 +283,11 @@
 
 	tmp.f_type = AUTOFS_SUPER_MAGIC;
 	tmp.f_bsize = 1024;
-	tmp.f_blocks = 0;
-	tmp.f_bfree = 0;
-	tmp.f_bavail = 0;
-	tmp.f_files = 0;
-	tmp.f_ffree = 0;
+	tmp.f_blocks = -1;
+	tmp.f_bfree = -1;
+	tmp.f_bavail = -1;
+	tmp.f_files = -1;
+	tmp.f_ffree = -1;
 	tmp.f_namelen = NAME_MAX;
 	return copy_to_user(buf, &tmp, bufsiz) ? -EFAULT : 0;
 }
diff -urN -x *.orig -x *~ linux-2.2.14.orig/fs/coda/inode.c linux/fs/coda/inode.c
--- linux-2.2.14.orig/fs/coda/inode.c	Mon Aug  9 21:05:10 1999
+++ linux/fs/coda/inode.c	Thu Jan 13 10:34:38 2000
@@ -250,12 +250,12 @@
 	error = venus_statfs(sb, &tmp);
 
 	if (error) {
-		/* fake something like AFS does */
-		tmp.f_blocks = 9000000;
-		tmp.f_bfree  = 9000000;
-		tmp.f_bavail = 9000000;
-		tmp.f_files  = 9000000;
-		tmp.f_ffree  = 9000000;
+		/* Undefined status */
+		tmp.f_blocks = -1;
+		tmp.f_bfree  = -1;
+		tmp.f_bavail = -1;
+		tmp.f_files  = -1;
+		tmp.f_ffree  = -1;
 	}
 
 	/* and fill in the rest */
diff -urN -x *.orig -x *~ linux-2.2.14.orig/fs/devpts/inode.c linux/fs/devpts/inode.c
--- linux-2.2.14.orig/fs/devpts/inode.c	Fri Aug 21 03:33:50 1998
+++ linux/fs/devpts/inode.c	Thu Jan 13 10:35:26 2000
@@ -249,11 +249,11 @@
 
 	tmp.f_type = DEVPTS_SUPER_MAGIC;
 	tmp.f_bsize = 1024;
-	tmp.f_blocks = 0;
-	tmp.f_bfree = 0;
-	tmp.f_bavail = 0;
-	tmp.f_files = 0;
-	tmp.f_ffree = 0;
+	tmp.f_blocks = -1;
+	tmp.f_bfree = -1;
+	tmp.f_bavail = -1;
+	tmp.f_files = -1;
+	tmp.f_ffree = -1;
 	tmp.f_namelen = NAME_MAX;
 	return copy_to_user(buf, &tmp, bufsiz) ? -EFAULT : 0;
 }
diff -urN -x *.orig -x *~ linux-2.2.14.orig/fs/fat/inode.c linux/fs/fat/inode.c
--- linux-2.2.14.orig/fs/fat/inode.c	Tue Jan  4 19:12:23 2000
+++ linux/fs/fat/inode.c	Thu Jan 13 10:29:46 2000
@@ -712,8 +712,8 @@
 	tmp.f_blocks = MSDOS_SB(sb)->clusters;
 	tmp.f_bfree = free;
 	tmp.f_bavail = free;
-	tmp.f_files = 0;
-	tmp.f_ffree = 0;
+	tmp.f_files = -1;
+	tmp.f_ffree = -1;
 	tmp.f_namelen = MSDOS_SB(sb)->options.isvfat ? 260 : 12;
 	return copy_to_user(buf, &tmp, bufsiz) ? -EFAULT : 0;
 }
diff -urN -x *.orig -x *~ linux-2.2.14.orig/fs/ncpfs/inode.c linux/fs/ncpfs/inode.c
--- linux-2.2.14.orig/fs/ncpfs/inode.c	Tue Jan  4 19:12:23 2000
+++ linux/fs/ncpfs/inode.c	Thu Jan 13 10:30:29 2000
@@ -546,9 +546,9 @@
 
 	tmp.f_type = NCP_SUPER_MAGIC;
 	tmp.f_bsize = 512;
-	tmp.f_blocks = 0;
-	tmp.f_bfree = 0;
-	tmp.f_bavail = 0;
+	tmp.f_blocks = -1;
+	tmp.f_bfree = -1;
+	tmp.f_bavail = -1;
 	tmp.f_files = -1;
 	tmp.f_ffree = -1;
 	tmp.f_namelen = 12;
diff -urN -x *.orig -x *~ linux-2.2.14.orig/fs/nfs/inode.c linux/fs/nfs/inode.c
--- linux-2.2.14.orig/fs/nfs/inode.c	Tue Jan  4 19:12:23 2000
+++ linux/fs/nfs/inode.c	Thu Jan 13 10:28:18 2000
@@ -385,8 +385,8 @@
 	tmp.f_blocks = res.blocks;
 	tmp.f_bfree = res.bfree;
 	tmp.f_bavail = res.bavail;
-	tmp.f_files = 0;
-	tmp.f_ffree = 0;
+	tmp.f_files = -1;
+	tmp.f_ffree = -1;
 	tmp.f_namelen = NAME_MAX;
 	return copy_to_user(buf, &tmp, bufsiz) ? -EFAULT : 0;
 }
diff -urN -x *.orig -x *~ linux-2.2.14.orig/fs/proc/inode.c linux/fs/proc/inode.c
--- linux-2.2.14.orig/fs/proc/inode.c	Sat May  9 03:10:30 1998
+++ linux/fs/proc/inode.c	Thu Jan 13 10:25:52 2000
@@ -340,11 +340,11 @@
 
 	tmp.f_type = PROC_SUPER_MAGIC;
 	tmp.f_bsize = PAGE_SIZE/sizeof(long);
-	tmp.f_blocks = 0;
-	tmp.f_bfree = 0;
-	tmp.f_bavail = 0;
-	tmp.f_files = 0;
-	tmp.f_ffree = 0;
+	tmp.f_blocks = -1;
+	tmp.f_bfree = -1;
+	tmp.f_bavail = -1;
+	tmp.f_files = -1;
+	tmp.f_ffree = -1;
 	tmp.f_namelen = NAME_MAX;
 	return copy_to_user(buf, &tmp, bufsiz) ? -EFAULT : 0;
 }
diff -urN -x *.orig -x *~ linux-2.2.14.orig/fs/qnx4/inode.c linux/fs/qnx4/inode.c
--- linux-2.2.14.orig/fs/qnx4/inode.c	Wed Oct 27 02:53:42 1999
+++ linux/fs/qnx4/inode.c	Thu Jan 13 10:32:57 2000
@@ -235,7 +235,7 @@
 	tmp.f_blocks = le32_to_cpu(sb->u.qnx4_sb.BitMap->di_size) * 8;
 	tmp.f_bfree = qnx4_count_free_blocks(sb);
 	tmp.f_bavail = tmp.f_bfree;
-	tmp.f_files = 0x00;	/* change this !!! */
+	tmp.f_files = -1;	/* change this !!! */
 	tmp.f_ffree = qnx4_count_free_inodes(sb);
 	tmp.f_namelen = QNX4_NAME_MAX;
 

