NFS corruption in recent HEAD.

Pawel Jakub Dawidek pjd at
Mon Nov 28 14:34:29 UTC 2011


I'm booting machine over the network using new NFS client and I'm
getting those warnings on boot:

	/etc/rc.subr: 666: Syntax error: "(" unexpected (expecting ";;")

I inspected the /etc/rc.subr file on the client and here is the problem.

At offset 16384 the file on the client contains data from offset 32768
from the server. It contains exactly 7599 bytes from the wrong place at
this offset. All next bytes up to offset 32768 are all zeros.

So the data is identical for ranges <0-16384) and <32768-40367) (to the
end of the file).

Then range <16384-23983) contains data from <32768-40367) and
<23984-32768) is all zeros. Probably if file would be bigger there will
be no zeros, but more data from wrong block.

It seems that the client is asking for third block where it should ask
for second block (or the server is providing wrong block).

Server is running '8.2-STABLE #17: Wed Sep 28 10:30:02 EDT 2011'.

BTW. When I copy the file on the client using cp(1), the copy is not
     corrupted (cp(1) is using mmap(2)?). But when I do
     'cat /etc/rc.subr > /foo' the corruptions is visible in new file too.

Pawel Jakub Dawidek             
FreeBSD committer               
Am I Evil? Yes, I Am!           
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url :

More information about the freebsd-fs mailing list