NFS corruption in recent HEAD.

Rick Macklem rmacklem at uoguelph.ca
Sun Nov 27 01:10:00 UTC 2011


Pawel Jakub Dawidek wrote:
> Hi.
> 
> 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.
> 
Hmm, the only thing I've done recently (r227493) was make the "readahead"
command line option actually work. Prior to r227493, the readahead was
always set to 1 and the command line option was ignored (overwritten by
a default assignment of 1 after the command options were processed).

Do you happen to specify "readahead=<N>" for this case? If so, try taking
the command line option off and see if that fixes the problem. (If it does,
there must be a bug for readaheads != 1.)

Other than that, I can't think of any recent change that might be related
to the above.

rick

> --
> Pawel Jakub Dawidek http://www.wheelsystems.com
> FreeBSD committer http://www.FreeBSD.org
> Am I Evil? Yes, I Am! http://yomoli.com


More information about the freebsd-fs mailing list