On Tue, May 29, 2012 at 10:07:42PM -0500, Jonathan Nieder wrote: > Hi Thibaut, > > Thibaut Girka wrote: > > > I've been bitten by this bug too, and here is what I've gathered: > > > > tst-eintr1 spawns threads continuously, without joining them, until it > > receives a SIGALRM. > > Thanks for the analysis. > > If I am reading correctly, tst-eintr1 tries to spawn 11 child threads, > one of which sends SIGUSR1 to other threads in a loop with a handler > that writes '.' and the other 10 of which spawn and join a child > repeatedly in a loop. At any given moment, there would be somewhere > in the range of 12 to 22 active threads (1 x driver + 1 x signal > source + 10 x tf1 + 0-10 x tf2).
Nevermind me, I must have been lacking some sleep :) You're right, the test spawns 10 threads (and those are the only ones that aren't joined immediatly), then, each thread + itself tries to spawn + join a thread... > Have you noticed the test behaving differently? Maybe when > pthread_join returns the process is still around? How do you know > there are extra unjoined threads? Well, no, after a quick inspection, it appears the test behaves correctly. Then, I have no idea why it would fail. 12~23 threads is well within any limit set up on my system, as far as I can tell... Sorry for wasting your time, Thibaut Girka.
signature.asc
Description: Digital signature