This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Re: accept() FreeBSD hangs when out of resources


On Mon, Jun 11, 2007 at 04:05:57PM -0800, Tad wrote:
> Andrew Lunn wrote:
> >On Mon, Jun 11, 2007 at 03:42:07PM -0800, Tad wrote:
> >  
> >>>>accept() won't return and won't timeout (>12hrs) when listen() 
> >>>>indicates a new connection, if out of sockets/file-descriptors and all 
> >>>>TCP connections are in ESTABLISHED state.
> >>>>        
> >>>Where exactly is it blocked. Please could you provide a call stack.
> 
> It's possible that the block is somewhere such as this "FIXME" code that 
> wasn't finished in sys/kern/sockio.c

Yes, i already looked at this code. However this code is creating a
new file descriptor. However the way eCos works is that the file
descriptor has already been allocated and is passed into the function
as a parameter. So i went back and looked at what called this function
and where is the file descriptor allocated. That code does appear to
correct handle insufficient resources.

So, i really need more information, eg the test case, or a backtrace
when the thread is blocked.

     Andrew

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]