I used strace to watch httpd, I found it use sendfile64 to write date to socket. But my cpu doesn't 64bits. Does anyone know sendfile64 whether can work on 32bits cpu? Or how can I do to let httpd not to use sendfile64? ----------------------------------------------- Regards, Aslan Liu -----Original Message----- From: Jeff Trawick [mailto:trawick@xxxxxxxxx] Sent: Wednesday, March 17, 2010 7:27 PM To: users@xxxxxxxxxxxxxxxx Subject: Re: Overlap some content when using pppoe+httpd On Wed, Mar 17, 2010 at 5:03 AM, ChiaTzung Liu <ChiaTzung.Liu@xxxxxxxxxxxx> wrote: > Hi, > > > > My pc is installed linux-2.6.24.4, httpd-2.2.9, rp-pppoe-3.8 and ppp-2.4.4. > > It connects to WAN by PPPoE, so it has both of WAN IP and LAN IP. > > For example, 172.23.26.130(LAN) and 140.35.25.73(PPPoE). > > > > Then, I put a file which size is larger than 16396 bytes on my pc for > downloading. > > After that, I use http://140.35.25.73/file and https://140.35.25.73/file to > download this file. > > If I use https, the downloaded file is correct. But not for http. > > For example, the file original content may be... > > ================================= > > abcdefghijklmnopqrstuvwxyz > > ================================= > > > > And the downloaded file by http may be... > > ================================= > > abcdefghijklklmnopqrsrstuvwxyz > > ================================= > > > > If use wireshark to watch packets, will see... > > > > Packet1(data part): > > abcdefghijkl > > Packet2(data part): > > klmnopqrs > > Packet3(data part): > > rstuvwxyz > > > > It is easy to find that the returned data isn't correct, some overlap > happens. The interesting thing is... > > 1. It only happens when the file size is larger than 16396 bytes > > 2. https is ok, only http has this problem > > 3. Only when using PPPoE, if use http://172.23.26.130/file, it's ok. > > > > However, a more interesting thing is... > > http://140.35.25.73/file is ok if turn on DumpIOOutput. > > > > Is it a bug of httpd? Probably not. > Should I report it? Or anyone can give me any > suggestion about how to solve this issue? Use strace to dump the full I/O buffers passed by httpd to the TCP layer (see the text "-e write=set" in the strace man page). If httpd passes bad data, open a bug with the Apache Bugzilla. Otherwise, ask for debug help on a Linux mailing list. (Isn't "fix the MTU" the answer to any weird networking issue? (only half joking)) --------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx --------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx