From owner-cvs-all Thu Jun 15 12: 8:21 2000 Delivered-To: cvs-all@freebsd.org Received: from fw.wintelcom.net (ns1.wintelcom.net [209.1.153.20]) by hub.freebsd.org (Postfix) with ESMTP id 9E84037C087; Thu, 15 Jun 2000 12:08:10 -0700 (PDT) (envelope-from bright@fw.wintelcom.net) Received: (from bright@localhost) by fw.wintelcom.net (8.10.0/8.10.0) id e5FJ87b05205; Thu, 15 Jun 2000 12:08:07 -0700 (PDT) Date: Thu, 15 Jun 2000 12:08:07 -0700 From: Alfred Perlstein To: Nate Williams Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/kern uipc_socket.c uipc_socket2.c src/sys/sys socket.h Message-ID: <20000615120807.M18462@fw.wintelcom.net> References: <200006151818.LAA31278@freefall.freebsd.org> <200006151845.MAA25472@nomad.yogotech.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2i In-Reply-To: <200006151845.MAA25472@nomad.yogotech.com>; from nate@yogotech.com on Thu, Jun 15, 2000 at 12:45:08PM -0600 Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG * Nate Williams [000615 11:46] wrote: > > alfred 2000/06/15 11:18:43 PDT > > > > Modified files: > > sys/kern uipc_socket.c uipc_socket2.c > > sys/sys socket.h > > Log: > > add socketoptions DELAYACCEPT and HTTPACCEPT which will not allow an accept() > > until the incoming connection has either data waiting or what looks like a > > HTTP request header already in the socketbuffer. This ought to reduce > > the context switch time and overhead for processing requests. > > > > The initial idea and code for HTTPACCEPT came from Yahoo engineers and has > > been cleaned up and a more lightweight DELAYACCEPT for non-http servers > > has been added > > > > Reviewed by: silence on hackers. > > Huh? I never saw this. I object to adding application specific code > inside the kernel. It's not really a signifigant amount of code if you look at the delta, the performance difference is signifigant though. You'll be happy when I release my http server that uses this. The final patch is up at: http://people.freebsd.org/~alfred/kblob/kblob-final.diff Here is the original message titled: "big patch"