On Friday 07 December 2007 05:23:39 Allison Randal wrote: > I'm about to turn on the concurrency scheduler runloop in Parrot trunk. > Before I do, I'd like test results on as many platforms as possible > (especially Windows, since it doesn't use POSIX threads). > > To test it, edit src/inter_create.c and uncomment the two lines that > start with 'Parrot_cx...". Then run 'make test' and let me know if it > fails any tests that passed before.
On Ubuntu 7.10: t/src/vtables......1/4 # Failed test (t/src/vtables.t at line 142) # Exited with error code: [SIGNAL 139] # Received: # # Expected: # ok # ok # ok $ gcc -o v4 -Iinclude -Lblib/lib/ -lparrot t/src/vtables_4.c $ LD_LIBRARY_PATH=blib/lib gdb ./v4 ok ok ok Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1213491008 (LWP 8173)] 0xb7c6ee43 in pmc_new (interp=0x804a008, base_type=79) at src/pmc.c:70 70 PMC *const classobj = interp->vtables[base_type]->pmc_class; (gdb) p base_type $1 = 79 (gdb) bt #0 0xb7c6ee43 in pmc_new (interp=0x804a008, base_type=79) at src/pmc.c:70 #1 0xb7c70372 in Parrot_cx_runloop_end (interp=0x804a008) at src/scheduler.c:230 #2 0xb7c3f113 in Parrot_really_destroy (interp=0x804a008, exit_code_unused=0, arg_unused=0x0) at src/inter_create.c:380 #3 0xb7c2ed3c in Parrot_exit (interp=0x804a008, status=0) at src/exit.c:94 #4 0x080485d2 in main () PMC #79 is a Task PMC. This didn't go away on a realclean. I even moved ending the runloop to before the full DOD when destroying an interpreter, but to no effect. -- c