Date: Tue, 20 Nov 2007 20:29:12 -0800 From: "Kip Macy" <kip.macy@gmail.com> To: "Jin Guojun" <jin@george.lbl.gov> Cc: freebsd-bugs@freebsd.org, kmacy@freebsd.org Subject: Re: kern/37436: [hang] accept dead loop when out of file descriptors Message-ID: <b1fa29170711202029q287eef4dq2d7b2f4bf2ecede6@mail.gmail.com> In-Reply-To: <4743B04D.8030305@george.lbl.gov> References: <200711170119.lAH1Jokl048803@freefall.freebsd.org> <473E451C.8090103@george.lbl.gov> <b1fa29170711161837k71bbf1e5w9a8efaa400f46ced@mail.gmail.com> <4743B04D.8030305@george.lbl.gov>
next in thread | previous in thread | raw e-mail | index | archive | help
If you can send me a test case to reproduce I'll track down where the error is coming from. -Kip On Nov 20, 2007 8:13 PM, Jin Guojun <jin@george.lbl.gov> wrote: > > Kip Macy wrote: > > >On Nov 16, 2007 5:34 PM, Jin Guojun <jin@george.lbl.gov> wrote: > > > > > >>kmacy@FreeBSD.org wrote: > >> > >> > >> > >>>Synopsis: [hang] accept dead loop when out of file descriptors > >>> > >>>State-Changed-From-To: open->feedback > >>>State-Changed-By: kmacy > >>>State-Changed-When: Sat Nov 17 01:19:37 UTC 2007 > >>>State-Changed-Why: > >>> > >>>Is this still an issue? > >>> > >>>http://www.freebsd.org/cgi/query-pr.cgi?pr=37436 > >>> > >>> > >>> > >>> > >>I will check into it in a week. > >> > >> > > > >By "still", I mean RELENG_6 or better yet RELENG_7. > > > > -Kip > > > > > Another slightly odd thing is discovered during repeat this test. > The maximum number of threads (pthread_create via libthr) can be created > is 111. > Therefore, there is no way to reproduce this problem due to > pthread_create problem. > > The pthread_create() fails due to Error<35> Resource temporarily > unavailable. However, > memory allocation is still functioning. I have tested on a 256MB laptop > and a 1GB desktop, > both had the same problem for pthread creation -- maximum 111 threads > can be created. > Below is my resource limits and I do not believe that is the problem: > > /home/users/libthr: limit > cputime unlimited > filesize unlimited > datasize 1048028 kbytes > stacksize 65536 kbytes > coredumpsize unlimited > memoryuse unlimited > vmemoryuse unlimited > descriptors 11095 > memorylocked unlimited > maxproc 5547 > sbsize unlimited > > It looks like 6.2-R and RELENG_6/7 kernel has some restriction on number > of threads to handle, > because all libthr, libpthread and libc_r all behave the same. > Is this true? > > So, that only test can be done is to set descriptors limit to 117 on the > server to test 111 > connections from a client. Such test is Ok. > If the descriptors limit is set to 116, the accept will return error > without hanging. > But I do not know if this will be true when the number of descriptors > used is larger. > > I tried to run the same command multiple times on the same client, it > does not help much. > I will look this issue further. > > -Jin >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b1fa29170711202029q287eef4dq2d7b2f4bf2ecede6>