sendfile data corruption (was: cvs commit: src/sys/kern
uipc_syscalls.c src/sys/sys libkern.h socket.h)
Pawel Worach
pawel.worach at gmail.com
Fri Nov 10 18:09:41 PST 2006
Andre Oppermann wrote:
> andre 2006-11-02 16:53:26 UTC
>
> FreeBSD src repository
>
...
> Rewrite kern_sendfile() to work in two loops, the inner which turns as many
...
>
> Revision Changes Path
> 1.240 +280 -242 src/sys/kern/uipc_syscalls.c
> 1.55 +2 -0 src/sys/sys/libkern.h
> 1.91 +2 -1 src/sys/sys/socket.h
Hi Andre,
I'm seeing some strange data corruption with this change.
Using apache 2.0.59 from ports, hardware is SMP i386.
0>root at cookie /usr/local/www/data# md5 sh
MD5 (sh) = e090ae9fc697b6ec84165af920034dc4
0>root at cookie /usr/local/www/data# unsetenv http_proxy
0>root at cookie /usr/local/www/data# fetch -o /tmp/sh http://127.0.0.1/sh
/tmp/sh 100% of 109 kB 6516 kBps
0>root at cookie /usr/local/www/data# md5 /tmp/sh
MD5 (/tmp/sh) = 1b6b9786ce7aa74b7ecbc7ee82c230dd
It seems to be consistent...
0>root at zero /usr/local/www/data# fetch -o /tmp/sh2 http://127.0.0.1/sh
/tmp/sh2 100% of 109 kB 41 MBps
0>root at zero /usr/local/www/data# md5 /tmp/sh2
MD5 (/tmp/sh2) = 1b6b9786ce7aa74b7ecbc7ee82c230dd
Checking with hd(1) the changed data always seems to start at offset
0x0000e000.
cvs up -D '2006/11/02 17:00:00' OK
Repository revision: 1.239
/export/ctm/cvs/src/sys/kern/uipc_syscalls.c,v
cvs up -D '2006/11/02 18:00:00' BROKEN
Repository revision: 1.240
/export/ctm/cvs/src/sys/kern/uipc_syscalls.c,v
Files changed with update:
P geom/journal/g_journal.c
P kern/uipc_syscalls.c
P sys/libkern.h
P sys/socket.h
Any other information I can provide?
Regards
--
Pawel
More information about the freebsd-current
mailing list