That's all I needed to know :-) I've been looking at commits since the last release and I don't see any changes to core.thread that should have affected this. I don't know how interested you are in sleuthing, but if you're game, try src/core/gc/gcx.d from commit d4cdbcb1ffe356438b92 and let me know if anything changes. I've put the file online here if it helps:
http://invisibleduck.org/sean/tmp/gcx_d4cdbcb1ffe356438b92.zip This would revert a raft of GC optimizations that went into 2.053, and while they shouldn't have caused any problems either, it's worth a shot. On May 13, 2011, at 5:21 PM, David Bryant wrote: > My apologies, I'm a bit new to all this. If a regression means a problem that > was previously fixed but is now recurring, then it's not a regression. I've > changed the bugzilla entry to reflect that it's a new bug. > > I appreciate that reproducibility is key to fixing any issue, however it's > difficult for me to reduce the code that it occurs in. I was hoping the > backtrace might provide a clue to someone who had been making changes in that > area (the crash is always preceded by GC operations). > > My program consists of 4800 lines of code and much of that is a homespun > concurrency framework. Given that no one else is reporting problems with > threading I am skeptical about being able to create a simplified reproduction. > > From my point of view I'm happy to keep using an older compiler that doesn't > manifest this bug. If the problem doesn't go away in future dmd releases or > other people start experiencing seemingly related issues then I'll definitely > want to increase my efforts. > > Regards, > Dave > > On 14 May 2011 02:08, Sean Kelly <[email protected]> wrote: > New bug or regression? > > Sent from my iPhone > > On May 12, 2011, at 10:02 PM, David Bryant <[email protected]> wrote: > >> http://d.puremagic.com/issues/show_bug.cgi?id=5993 >> >> On 13 May 2011 13:48, David Bryant <[email protected]> wrote: >> I can't seem to connect to d.puremagic.com to file a bug, but the final beta >> (and the previous one) are giving me new problems. My code fails most of the >> time with exceptions from within threads, for example: >> >> Thread died unexpectedly: >> %score.thread.ThreadException@src/core/thread.d(2338): Unable to suspend >> thread >> ---------------- >> ./.bob/bob(extern (C) void core.thread.thread_suspendAll().void >> suspend(core.thread.Thread)+0x86) [0x80f63da] >> ./.bob/bob(thread_suspendAll+0x7f) [0x80f633f] >> ./.bob/bob(uint gc.gcx.Gcx.fullcollect(void*)+0x14) [0x80edf80] >> ./.bob/bob(uint gc.gcx.Gcx.fullcollectshell()+0x26) [0x80edf5e] >> ./.bob/bob(void* gc.gcx.Gcx.bigAlloc(uint, gc.gcx.Pool**, uint*)+0x8a) >> [0x80edae6] >> ./.bob/bob(void* gc.gcx.GC.mallocNoSync(uint, uint, uint*)+0x11d) [0x80ec2ad] >> ./.bob/bob(void* gc.gcx.GC.malloc(uint, uint, uint*)+0x4b) [0x80ec163] >> ./.bob/bob(gc_malloc+0x1e) [0x80cbc9e] >> ./.bob/bob(void* core.memory.GC.malloc(uint, uint)+0xf) [0x80c8963] >> ./.bob/bob(void[] std.file.read(const(char[]), const(uint))+0xc2) [0x80dd232] >> ./.bob/bob(immutable(char)[] >> std.file.readText!(immutable(char)[]).readText(const(char[]))+0x16) >> [0x80be266] >> >> Not sure what other information might be useful. >> >> Regards, >> Dave >> >> _______________________________________________ >> dmd-beta mailing list >> [email protected] >> http://lists.puremagic.com/mailman/listinfo/dmd-beta > > _______________________________________________ > dmd-beta mailing list > [email protected] > http://lists.puremagic.com/mailman/listinfo/dmd-beta > > _______________________________________________ > dmd-beta mailing list > [email protected] > http://lists.puremagic.com/mailman/listinfo/dmd-beta _______________________________________________ dmd-beta mailing list [email protected] http://lists.puremagic.com/mailman/listinfo/dmd-beta
