All - First, please excuse my attaching a patch here, but I would like to respond once (or a few times &8-) in case it's helpful. Second, my reply to Mr. Singh failed posting because it originated from a reader that can't enforce text-only formatting. Sorry. Third, I post this patch for test and discussion purposes. It seems to help in our limited case, but comes with no guarantee. I would appreciate hearing others' experience. Thanks for your patience. - John Mills On Tue, 25 Sep 2007, Alok Singh wrote: > John, > Please post it in whatever form you deem as appropriate.  Let us know > when you will be able to post it. > BTW, I'm seeing a similar issue in my application.  Sockets are > exhausted, and web is not accessible.  Ping is going through. I've kept > Max. number of sockets as 32 while configuring ecos. The strange thing > is that the issue comes after a long period of inactivity, i.e., no web > activity.    > Your patch will be useful. > Regards, > Alok   > ________________________________________ > From: John Mills [mailto:JMills@airdefense.net] > Sent: Tuesday, September 25, 2007 6:56 PM > To: Alok Singh > Cc: ecos-discuss@ecos.sourceware.org > Subject: RE: [ECOS] Re: Network TCP Handler: stale socket disposal > All - > I don't believe my patch was ever accepted. The eCos sources carry a > cautionary note that such a 'hung' socket may have been placed on the > net stack 'accept' queue, and may be in the process of acceptance by a > user thread which could then block. > I checked Linux and FreeBSD man pages on this. In Linux the blocked task > would receive the next such incoming client and be unblocked. This is > perfect for my application. Neither OpenBSD nor FreeBSD man pages > address the issue specifically. > I didn't try to replicate the race condition myself. > eCos now uses an older version of the BSD stack, and updating it looks > significant - well over a month's work, maybe 3 or 4 based on the time > the original author reported for his port. > The patch solved a show-stopping problem with our application and seems > to cause no problems, so we're using it. Two other users tried the > approach and wrote me off-list: in one case it resolved a problem, in > the other it made no difference (either way, as far as I know). I can > share the patch on a "no warranty" basis, but would prefer to post it > appropriately rather than circulating it randomly. >  - John Mills