NFS write corruption on 8.0-RELEASE
Dmitry Marakasov
amdmi3 at amdmi3.ru
Wed Feb 10 18:05:45 UTC 2010
Hi!
I think I've reported that before, the I thought it's been fixed,
however I still get data corruptions when writing on NFS volumes.
Now I wonder - is nobody really using NFS, or do I have that much
of uncommon setup, or this is some kind of local problem?
Client: 8.0-RELEASE i386
Server: 8.0-RELEASE amd64
mount options:
nfs rw,nosuid,noexec,nfsv3,intr,soft,tcp,bg,nolockd
Server has ZFS, but the same thing happens when sharing UFS placed on
md(4).
I've prepared a special 1GB file to determine the details of corruption:
it's filled with 32-bit numbers each equal to it's own offset in the
file. That is, like that:
00000000 00 00 00 00 04 00 00 00 08 00 00 00 0c 00 00 00 |................|
00000010 10 00 00 00 14 00 00 00 18 00 00 00 1c 00 00 00 |................|
00000020 20 00 00 00 24 00 00 00 28 00 00 00 2c 00 00 00 | ...$...(...,...|
00000030 30 00 00 00 34 00 00 00 38 00 00 00 3c 00 00 00 |0...4...8...<...|
I've copied that file over NFS from client to server around 50
times, and got 3 corruptions on 8th, 28th and 36th copies.
Case1: single currupted block 3779CF88-3779FFFF (12408 bytes).
Data in block is shifted 68 bytes up, loosing first 68 bytes are
filling last 68 bytes with garbage. Interestingly, among that garbage
is my hostname.
Case2: single currupted block 2615CFA0-2615FFFF (12384 bytes).
Data is shifted by 44 bytes in the same way.
Case3: single currepted block 3AA947A8-3AA97FFF (14424 bytes).
Data is shifted by 36 bytes in the same way.
Any ideas?
PS. Diffs of corrupted blocks in a text format are here:
http://people.freebsd.org/~amdmi3/diff.1.txt
http://people.freebsd.org/~amdmi3/diff.2.txt
http://people.freebsd.org/~amdmi3/diff.3.txt
--
Dmitry Marakasov . 55B5 0596 FF1E 8D84 5F56 9510 D35A 80DD F9D2 F77D
amdmi3 at amdmi3.ru ..: jabber: amdmi3 at jabber.ru http://www.amdmi3.ru
More information about the freebsd-stable
mailing list