On Fri, 14 Nov 2003, Peter Edwards wrote:
Bernd Walter wrote:
On Thu, Nov 13, 2003 at 12:54:18AM -0800, Kris Kennaway wrote:
On Thu, Nov 13, 2003 at 06:44:25PM +1100, Peter Jeremy wrote:And it's nothing new - I'm seeing this since several years now.
On Wed, Nov 12, 2003 at 06:04:00PM -0800, Kris Kennaway wrote:
...my sparc machine reports that my i386 nfs server has 15 exabytes of
free space!
enigma# df -k Filesystem 1K-blocks Used Avail Capacity Mounted on rot13:/mnt2 56595176 54032286 18014398507517260 0% /rot13/mnt2
18014398507517260 = 2^54 - 1964724. and 2^54KB == 2^64 bytes. Is it possible that rot13:/mnt2 has negative free space? (ie it's into the 8-10% reserved area).
Yes, that's precisely what it is..the bug is either in df or the kernel (I suspect the latter, i.e. something in the nfs code).
The NFS protocols have unsigned fields where statfs has signed equivalents: NFS can't represent negative available disk space ( Without the knowledge of the underlying filesystem on the server, negative free space is a little nonsensical anyway, I suppose)
The attached patch stops the NFS server assigning negative values to unsigned fields in the statfs response, and works against my local solaris box. Seem reasonable?
The client attampts to fix this by pretending that the unsigned fields are signed. -current tries to do more to support file system sizes larger that 1TB, but the code for this is not even wrong except it may be wrong enough to break the negative values. See my reply to one of the PRs for more details.
I just got around to testing the patch in that reply:
%%% Index: nfs_vfsops.c =================================================================== RCS file: /home/ncvs/src/sys/nfsclient/nfs_vfsops.c,v
Your patch to nfs_vfsops won't apply to my Solaris kernel :-)
The protocol says "abytes" is unsigned, so the server shouldn't be lying by sending a huge positive value for available space on a full filesystem. No?
_______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "[EMAIL PROTECTED]"