Return-Path: owner-new-httpd Received: by taz.hyperreal.com (8.6.12/8.6.5) id NAA26629; Sun, 2 Jul 1995 13:05:30 -0700 Received: from thoth.netgen.com by taz.hyperreal.com (8.6.12/8.6.5) with SMTP id NAA26624; Sun, 2 Jul 1995 13:05:28 -0700 Received: from bokonon.netgen.com by thoth.netgen.com; (5.65/1.1.8.2/25May95-0615PM) id AA25579; Sun, 2 Jul 1995 16:04:56 -0400 Received: by bokonon.Netgen.COM (5.x/SMI-SVR4) id AA00763; Sun, 2 Jul 1995 16:03:27 -0400 Date: Sun, 2 Jul 1995 16:03:26 -0400 (EDT) From: Matthew Gray X-Sender: mkgray@bokonon To: Apache Development List Subject: Serializing Accepts Message-Id: Organization: net.Genesis Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-new-httpd@apache.org Precedence: bulk Reply-To: new-httpd@apache.org Linux runs into the same problem as Solaris with non-serial accepts. Patches to 0.7.3k to flock on the error log follow. This solves the problem under Linux and have noticed no user visible problems with loads >60khits per day. I have not yet tested this under our Solaris machine, but will. (not that you'd want to actually run a web server under solaris, but...) Matthew Gray --------------------------------- voice: (617) 577-9800 net.Genesis fax: (617) 577-9850 56 Rogers St. mkgray@netgen.com Cambridge, MA 02142-1119 ------------- http://www.netgen.com/~mkgray *** lock.h.orig Mon Jun 26 17:30:45 1995 --- lock.h Sun Jul 2 16:00:24 1995 *************** *** 58,65 **** #ifndef NEED_ACCEPT_SERIALIZED ! #define lock_for_serialization() ! #define unlock_after_serialization() #else /* System dependent routine can be added here. */ --- 58,65 ---- #ifndef NEED_ACCEPT_SERIALIZED ! #define lock_for_serialization() flock(request->virt_host->error_log, LOCK_EX); ! #define unlock_after_serialization() flock(request->virt_host->error_log, LOCK_UN); #else /* System dependent routine can be added here. */ *** Makefile.orig Sun Jul 2 16:11:36 1995 --- Makefile Sun Jul 2 16:11:41 1995 *************** *** 56,62 **** # For Sequent #AUX_CFLAGS= -DSEQUENT # For Linux -m486 ONLY IF YOU HAVE 486 BINARY SUPPORT IN KERNEL ! #AUX_CFLAGS= -DLINUX # For A/UX #AUX_CFLAGS= -DAUX #EXTRA_LIBS= -lbsd -lposix -s --- 56,62 ---- # For Sequent #AUX_CFLAGS= -DSEQUENT # For Linux -m486 ONLY IF YOU HAVE 486 BINARY SUPPORT IN KERNEL ! #AUX_CFLAGS= -DLINUX -DNEED_ACCEPT_SERIALIZED # For A/UX #AUX_CFLAGS= -DAUX #EXTRA_LIBS= -lbsd -lposix -s