Jump to page: 1 2
Thread overview
[dmd-beta] dmd 1.068 and 2.053 final beta
May 13, 2011
David Bryant
May 13, 2011
David Bryant
May 13, 2011
Brad Roberts
May 13, 2011
Sean Kelly
May 14, 2011
David Bryant
May 14, 2011
Andrej Mitrovic
May 14, 2011
Walter Bright
May 14, 2011
Stephan Dilly
May 16, 2011
Sean Kelly
May 24, 2011
d coder
May 25, 2011
Sean Kelly
May 26, 2011
d coder
May 13, 2011
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 at 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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/dmd-beta/attachments/20110513/871cdb86/attachment.html>
May 13, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=5993

On 13 May 2011 13:48, David Bryant <bagnose at gmail.com> 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 at 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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/dmd-beta/attachments/20110513/1e39375f/attachment-0001.html>
May 12, 2011
A bug report without a repro case is of minimal value.  Can you spend some time to reduce your app down to something small enough to post?

On 5/12/2011 10:02 PM, David Bryant wrote:
> http://d.puremagic.com/issues/show_bug.cgi?id=5993
> 
> On 13 May 2011 13:48, David Bryant <bagnose at gmail.com <mailto:bagnose at gmail.com>> wrote:
> 
>     I can't seem to connect to d.puremagic.com <http://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 at 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
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta

May 13, 2011
New bug or regression?

Sent from my iPhone

On May 12, 2011, at 10:02 PM, David Bryant <bagnose at gmail.com> wrote:

> http://d.puremagic.com/issues/show_bug.cgi?id=5993
> 
> On 13 May 2011 13:48, David Bryant <bagnose at gmail.com> 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 at 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
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/dmd-beta/attachments/20110513/e6f205b6/attachment.html>
May 14, 2011
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 <sean at invisibleduck.org> wrote:

> New bug or regression?
>
> Sent from my iPhone
>
> On May 12, 2011, at 10:02 PM, David Bryant <bagnose at gmail.com> wrote:
>
> <http://d.puremagic.com/issues/show_bug.cgi?id=5993> http://d.puremagic.com/issues/show_bug.cgi?id=5993
>
> On 13 May 2011 13:48, David Bryant < <bagnose at gmail.com>bagnose at gmail.com>wrote:
>
>> I can't seem to connect to <http://d.puremagic.com>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 at 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
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/dmd-beta/attachments/20110514/b583ad3e/attachment.html>
May 14, 2011
Any chance of fixing the download soon? Pretty-please. http://ftp.digitalmars.com/dmd.2.053.zip
May 13, 2011

On 5/13/2011 5:48 PM, Andrej Mitrovic wrote:
> Any chance of fixing the download soon? Pretty-please. http://ftp.digitalmars.com/dmd.2.053.zip
>

It's fixed. Sorry 'bout that.
May 14, 2011
Actually a regression is exactly what you though it is. A bug that was introduced in release A and was not in release A-1 is called a regression in release A.

Stephan

On 14.05.2011 02:21, 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 <sean at invisibleduck.org <mailto:sean at invisibleduck.org>> wrote:
>
>     New bug or regression?
>
>     Sent from my iPhone
>
>     On May 12, 2011, at 10:02 PM, David Bryant <bagnose at gmail.com
>     <mailto:bagnose at gmail.com>> wrote:
>
>>     <http://d.puremagic.com/issues/show_bug.cgi?id=5993>http://d.puremagic.com/issues/show_bug.cgi?id=5993
>>
>>     On 13 May 2011 13:48, David Bryant
>>     <<mailto:bagnose at gmail.com>bagnose at gmail.com
>>     <mailto:bagnose at gmail.com>> wrote:
>>
>>         I can't seem to connect to
>>         <http://d.puremagic.com>d.puremagic.com
>>         <http://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 at 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
>>     dmd-beta at puremagic.com <mailto:dmd-beta at puremagic.com>
>>     http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
>     _______________________________________________
>     dmd-beta mailing list
>     dmd-beta at puremagic.com <mailto:dmd-beta at puremagic.com>
>     http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
>
>
>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
May 16, 2011
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 <sean at invisibleduck.org> wrote: New bug or regression?
> 
> Sent from my iPhone
> 
> On May 12, 2011, at 10:02 PM, David Bryant <bagnose at gmail.com> wrote:
> 
>> http://d.puremagic.com/issues/show_bug.cgi?id=5993
>> 
>> On 13 May 2011 13:48, David Bryant <bagnose at gmail.com> 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 at 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
>> dmd-beta at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
> 
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
> 
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta

May 24, 2011
Sean

>>>> core.thread.ThreadException at src/core/thread.d(2338): Unable to suspend
thread

I am getting this same error for DMD 2.053 and for 2.051 as well.

In my case the error comes only when:

a) the number of threads is huge
AND
b) more than one thread is active at a time

So for example if number of threads is 1024 and only one thread is activated at a given time (using semaphores) I never get this issue. But if two or more threads are activated, I am getting this run-time exception around 20% of the times I run the application.

On the other hand if the number of threads is 512 and all of them are simultaneously active, I do not get to see this error.

I do not know how to debug such issues. If you can guide I would be willing to spend some time.

Regards
- Puneet
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/dmd-beta/attachments/20110524/d3c07b81/attachment.html>
« First   ‹ Prev
1 2