On 8 Dec 2007, at 20:22, Allison Randal wrote:
Could you edit src/scheduler.c and change the value of CX_DEBUG to 1, recompile, and run the test suite? Most of the tests will fail because of the additional output on stderr, but if you can catch a hang, we'll have a little more detail on what stage the scheduler was in when the deadlock hit.


CX_DEBUG = 1, make test, hangs quite promptly. The immediately preceding debug output looks like this:


#     Failed test (t/compilers/imcc/imcpasm/opt1.t at line 787)
#          got: '# IMCC does produce b0rken PASM files
# # see http://guesthandling tasks in scheduler runloop
# Found task ID # 1
# ended scheduler runloop
# '
#     expected: '# IMCC does produce b0rken PASM files
# # see http://[EMAIL PROTECTED]/rt3/Ticket/Display.html?id=32392
# _main:
#  inc N0
#  end
# '

(full transcript available here: http://hexten.net/junk/parrot1.txt)

And Instruments is telling me this:

http://hexten.net/junk/parrot1.png

Only two threads this time.

Here's another similar hang:

http://hexten.net/junk/parrot2.png

I can't seem to reproduce the six thread case.

It seems to hang much more readily with CX_DEBUG enabled - including once during make rather than make test.

What next?

--
Andy Armstrong, Hexten




Reply via email to