Colm MacCarthaigh <[EMAIL PROTECTED]> writes:

> Linux (2.4.18 and 2.4.19, for me anyway) with apache versions
> 2.0.40 to 2.0.43 (that I've tested anyways) is broken with
> TCP_CORK and IPv6. Bizarrely v6 requests will work the first
> few times and then start failing, typically you just wont get
> a response from the server. Though strace shows that it did
> try to send one.
> 
> Anyway, disabling TCP_CORK fixes it and it works fine again,
> useful info for anyone running IPv6, because believe me, it
> took me all morning to figure out what the hell was going on.
> 
> Might be worth adding a --disable-tcp-cork option to ./configure
> for convienence :-)

If you have time, can you see if the existing "--disable-sendfile"
configure option gets rid of the bogosity too?  If you're running code
after 2.0.43, you can add "EnableSendfile Off" to your config for
"<Directory />" to get the same effect.  If we know if this does the
trick, at least we have a work-around that doesn't require patches to
Apache or APR.  Presumably --disable-ipv6 isn't a good work-around :)

Perhaps what is needed is

  --disable-ipv6-tcp-cork

to no-op the socket option for IPv6 traffic only, since disabling it
altogether is a performance problem for IPv4.

If we knew what Linux kernels were broken* then this could be handled
automatically at configure time, at least for those people not using
binary builds.

*assuming that it is Linux which is broken :)
-- 
Jeff Trawick | [EMAIL PROTECTED]
Born in Roswell... married an alien...

Reply via email to