httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Greg Ames <grega...@remulak.net>
Subject Re: Apache/2.0.22-dev is running on apache.org
Date Thu, 26 Jul 2001 15:29:06 GMT
Dirk-Willem van Gulik wrote:
> 
> On Tue, 24 Jul 2001, Justin Erenkrantz wrote:
> 
> > On Tue, Jul 24, 2001 at 06:07:03PM -0400, Greg Ames wrote:
> > > *  an assert() trap, also in apr_sendfile, for the problem which is
> > > responsible for the most core dumps on daedalus (APR_SUCCESS + 0 bytes
> > > sent - wtf??), and
> >
> > Could this be from sendfile returning EAGAIN?
> >
> > When testing it on Solaris, sendfilev would return EAGAIN and 0 bytes
> > sent if the socket isn't ready yet.  (FreeBSD has the closest
> > semantics to Solaris as any others out there.)  -- justin
> 
> Hmm - are you sure you do not get an EPIPE in that case ? Peraps it should
> be
>             /* FreeBSD's sendfile can return -1/EAGAIN even if it
>              * sent bytes.  Sanitize the result so we get normal EAGAIN
>              * semantics w.r.t. bytes sent.
>              */
>             if ((rv == -1) &&
>                 ((errno == EAGAIN) || (errno == EPIPE )) &&
>                 (nbytes))
>             {
>                 rv = 0;
>             }

I don't think so.  EPIPE usually means the connection is gone,
permanently.  We just return the error to the caller, and the request
dies, as it should.

Greg

Mime
View raw message