It gets better all the time :-(.
Trace of 2.0.32 against share on WfW 3.11:
----
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
fsync(4) = 0
times({tms_utime=1, tms_stime=93, tms_cutime=0, tms_cstime=0}) = 31965548
close(4) = 0
open("iozone.tmp", O_RDONLY) = 4
write(1, "Writing the 1 Megabyte file, \'i"..., 62) = 62
times({tms_utime=1, tms_stime=93, tms_cutime=0, tms_cstime=0}) = 31965555
read(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
read(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
read(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
read(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
read(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
read(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
read(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
----
Trace of 2.1.62 against same:
----
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
write(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 512) = 512
fsync(4) = 0
times({tms_utime=2, tms_stime=43, tms_cutime=0, tms_cstime=0}) = 12162718
close(4) = 0
open("iozone.tmp", O_RDONLY) = 4
write(1, "Writing the 1 Megabyte file, \'i"..., 62) = 62
times({tms_utime=2, tms_stime=43, tms_cutime=0, tms_cstime=0}) = 12162725
read(4, "", 512) = 0
^^^^^^^^
write(1, "Reading the file...Error reading"..., 41) = 41
_exit(1) = ?
----
For whatever reason, read() returns a zero length on the first call.
Yet the file does exist. This suggests that something in the VFS or
smbfs layer is in a race with the call and has not updated its notion
of the file's state. FWIW, Bonnie behaves the same way; failing on the
first read attempt.
I'd _really_ like to see this one nailed down, so let me know what
other trickery might be required to narrow down the fault?
Steve