From owner-freebsd-current Fri Nov 15 08:10:53 1996 Return-Path: owner-current Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id IAA24433 for current-outgoing; Fri, 15 Nov 1996 08:10:53 -0800 (PST) Received: from Kitten.mcs.com (Kitten.mcs.com [192.160.127.90]) by freefall.freebsd.org (8.7.5/8.7.3) with ESMTP id IAA24403 for ; Fri, 15 Nov 1996 08:10:46 -0800 (PST) Received: from Mailbox.mcs.com (Mailbox.mcs.com [192.160.127.87]) by Kitten.mcs.com (8.8.2/8.8.2) with ESMTP id KAA01107; Fri, 15 Nov 1996 10:10:43 -0600 (CST) Received: from Mercury.mcs.net (karl@Mercury.mcs.com [192.160.127.80]) by Mailbox.mcs.com (8.8.2/8.8.2) with ESMTP id KAA26703; Fri, 15 Nov 1996 10:10:40 -0600 (CST) Received: (from karl@localhost) by Mercury.mcs.net (8.8.2/8.8.2) id KAA21074; Fri, 15 Nov 1996 10:10:39 -0600 (CST) From: Karl Denninger Message-Id: <199611151610.KAA21074@Mercury.mcs.net> Subject: Re: SERIOUS TCP problem in 3.0 and the new compiler To: archie@whistle.com (Archie Cobbs) Date: Fri, 15 Nov 1996 10:10:39 -0600 (CST) Cc: karl@Mcs.Net, current@freebsd.org In-Reply-To: <199611150423.UAA19805@bubba.whistle.com> from "Archie Cobbs" at Nov 14, 96 08:23:32 pm X-Mailer: ELM [version 2.4 PL24] Content-Type: text Sender: owner-current@freebsd.org X-Loop: FreeBSD.org Precedence: bulk > > Unfortunately, I haven't been able to run it down as of yet. > > > > This is what happens: > > > > 1) Open a socket to a server, which forks off a copy of itself after > > accepting the socket connection. > > 2) Send LOTS (thousands) of transactions (a "transaction" is defined > > as transmission of one packet of data with a known size and prefix, > > the server end reads it, does something, and responds in some way > > with data). > > > > At some point a few thousand transactions into the process, you "lose" one > > of the responses. That is, the process which is doing the serving THINKS it > > wrote a response, but the CLIENT never gets it! > > > > Since this is a lock-step protocol, and we're relying on TCP to do the > > reliability part of data delivery, and no more than one request can ever be > > outstanding in this protocol, you're screwed. The process locks up hard. > > > > If we recompile under gcc 2.6.3, even running with a 3.0 (-current) kernel, > > the problem DOES NOT happen. If you compile under the current release (as > > of 11/11 at least) it *DOES* -- reliably. > > Can you provide some sample code, ie., the smallest piece(s) of code > that reproduce the problem? > > -Archie Working on it. -- -- Karl Denninger (karl@MCS.Net)| MCSNet - The Finest Internet Connectivity http://www.mcs.net/~karl | T1's from $600 monthly to FULL DS-3 Service | 33 Analog Prefixes, 13 ISDN, Web servers $75/mo Voice: [+1 312 803-MCS1 x219]| Email to "info@mcs.net" WWW: http://www.mcs.net/ Fax: [+1 312 248-9865] | 2 FULL DS-3 Internet links; 400Mbps B/W Internal