From owner-cvs-lib Sat May 17 05:04:13 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id FAA21754 for cvs-lib-outgoing; Sat, 17 May 1997 05:04:13 -0700 (PDT) Received: from spinner.DIALix.COM (spinner.dialix.com [192.203.228.67]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id FAA21734; Sat, 17 May 1997 05:04:00 -0700 (PDT) Received: from spinner.DIALix.COM (localhost.dialix.com.au [127.0.0.1]) by spinner.DIALix.COM with ESMTP id UAA22306; Sat, 17 May 1997 20:03:52 +0800 (WST) Message-Id: <199705171203.UAA22306@spinner.DIALix.COM> X-Mailer: exmh version 2.0gamma 1/27/96 To: "Andrey A. Chernov" cc: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-lib@FreeBSD.ORG Subject: Re: cvs commit: src/lib/libc/gen sleep.c In-reply-to: Your message of "Sat, 17 May 1997 01:32:43 MST." <199705170832.BAA04063@freefall.freebsd.org> Date: Sat, 17 May 1997 20:03:50 +0800 From: Peter Wemm Sender: owner-cvs-lib@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk "Andrey A. Chernov" wrote: > ache 1997/05/17 01:32:43 PDT > > Modified files: > lib/libc/gen sleep.c > Log: > Temporarily restore old (itimer) sleep variant because new one > (nanosleep) breaks Apache httpd badly: his childs died quickly after > number of requests (SIGPIPE). To reproduce this bug start > gdb /usr/local/sbin/httpd > run -X > > and make some bunch of concurent requests (load the server pages > from 3 different places f.e.) > After short time httpd dies via SIGPIPE. It never dies with old sleep.c > > In real life it looks like lots of broken images on the pages or missing > pages. Lynx says about Network read error, etc. > It seems something wrong in nanosleep signal handling. Are you sure that this is sleep() related? I have not been able to reproduce this here [yet]... Do you have rfc1413 (ident) lookups turned on? There is some highly suspicious handling of SIGALRM in there.. In fact, it returns with it's own SIGALRM handler active still.. This is definately a bug!! Cheers, -Peter