[Issue 19802] New: Possible regression with dustmite

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Apr 11 11:59:25 UTC 2019


https://issues.dlang.org/show_bug.cgi?id=19802

          Issue ID: 19802
           Summary: Possible regression with dustmite
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: druntime
          Assignee: nobody at puremagic.com
          Reporter: me at francescomecca.eu

I am getting a sigsegv running dustmite compiled with dmd ~master:
```
(gdb) r --force ../../druntime/src/ 'grep -nR HAVE_FORK' 
```
```
[...]
Loading ../../druntime/src/rt/util/typeinfo.d
Loading ../../druntime/src/test_runner.d
None =>
Program received signal SIGSEGV, Segmentation fault.
_D4core6atomic__T10atomicLoadVEQBdQBb11MemoryOrderi3TkZQBmFNaNbNiNfKOxkZk
(val=<error reading variable>)                               
    at ../druntime/import/core/atomic.d:1130
1130                        lock; // lock always needed to make this op atomic  
(gdb) bt
#0  _D4core6atomic__T10atomicLoadVEQBdQBb11MemoryOrderi3TkZQBmFNaNbNiNfKOxkZk
(val=<error reading variable>)                           
    at ../druntime/import/core/atomic.d:1130
#1  0x00005555557f3014 in std.stdio.File.__postblit() (this=...) at
std/stdio.d:468                                                    
#2  0x00005555557f1bec in
_D3std7process10spawnShellFNeMAxaSQBg5stdio4FileQpQrMxHAyaAyaEQCiQCh6ConfigMQBuMQzZCQDeQDd3Pid
(             
    shellPath=..., workDir=..., config=<incomplete type>, env=..., stderr=...,
stdout=..., stdin=..., command=...)                     
    at std/process.d:1307
#3  0x000055555573e70c in _D8dustmite4testFSQq9ReductionZ6doTestMFZb
(__capture=0x7fffdef44680) at ../../phobos/std/process.d:1288     
#4  0x000055555573e8f1 in
_D8dustmite4testFSQq9ReductionZ12__dgliteral7MFNaNiNfZb
(__capture=0x7fffdef44680) at dustmite.d:1535        
#5  0x000055555573e3db in _D8dustmite4testFSQq9ReductionZ9lookaheadMFLbZb
(__capture=0x7fffdef44680,                                   
    fallback=1730765656476055832606875017561728) at dustmite.d:1512
#6  0x000055555573e8d8 in
_D8dustmite4testFSQq9ReductionZ12__dgliteral8MFNaNiNfZb
(__capture=0x7fffdef44680) at dustmite.d:1535        
#7  0x000055555573d892 in _D8dustmite4testFSQq9ReductionZ10diskCachedMFLbZb
(__capture=0x7fffdef44680,                                 
    fallback=1730765656475391749820221473703552) at dustmite.d:1408
#8  0x000055555573e8b4 in
_D8dustmite4testFSQq9ReductionZ12__dgliteral9MFNaNiNfZb
(__capture=0x7fffdef44680) at dustmite.d:1535        
#9  0x000055555573d5bc in _D8dustmite4testFSQq9ReductionZ9ramCachedMFNfLbZb
(__capture=0x7fffdef44680,                                 
    fallback=1730765656474727667033567929845376) at dustmite.d:1377
#10 0x000055555573d459 in _D8dustmite4testFSQq9ReductionZb (reduction=...) at
dustmite.d:1535                                          
#11 0x00005555557386eb in D main (args=...) at dustmite.d:275
(gdb) l
1125                    asm pure nothrow @nogc @trusted
1126                    {
1127                        mov EDX, 0;
1128                        mov EAX, 0;
1129                        mov RCX, val;
1130                        lock; // lock always needed to make this op atomic
1131                        cmpxchg [RCX], EDX;
1132                    }
1133                }
1134                else
(gdb) 
```

--


More information about the Digitalmars-d-bugs mailing list