www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 15391] New: Deadlock in std.net.curl unittest

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

          Issue ID: 15391
           Summary: Deadlock in std.net.curl unittest
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P1
         Component: phobos
          Assignee: nobody puremagic.com
          Reporter: thomas.mader gmail.com

I tried to run the unittests of phobos 2.069.1 but got the following deadlock
in test_runner while running the std.net.curl unittest:

(gdb) thread apply all bt

Thread 2 (Thread 0x7ffff1ce5700 (LWP 19261)):
#0  0x00007ffff27a47dd in accept ()
   from
target:/nix/store/npfsi1d9ka8zwnxzn3sr08hbwvpapyk7-glibc-2.21/lib/libpthread.so.0
#1  0x00007ffff624eae4 in std.socket.Socket.accept() (this=0x7ffff7ef1700)
    at std/socket.d:2855
#2  0x00007ffff6f7fb8a in
std.net.curl.TestServer.loop(shared(std.socket.TcpSocket)) (
    listener=0x7ffff7ef1700) at std/net/curl.d:213
#3  0x00007ffff6fad46d in
std.concurrency._spawn!(void(shared(std.socket.TcpSocket)) function*,
shared(std.socket.TcpSocket))._spawn(bool, void(shared(std.socket.TcpSocket))
function*, shared(std.socket.TcpSocket)).exec() (this=0x7ffff7ef2100)
    at std/concurrency.d:517
#4  0x00007ffff75c903f in core.thread.Thread.run() (this=0x7ffff7eee500)
    at src/core/thread.d:1351
#5  0x00007ffff75c7f6c in thread_entryPoint (arg=0x60d850) at
src/core/thread.d:347
#6  0x00007ffff279d484 in start_thread ()
   from
target:/nix/store/npfsi1d9ka8zwnxzn3sr08hbwvpapyk7-glibc-2.21/lib/libpthread.so.0
#7  0x00007ffff1dcd05d in clone ()
   from
target:/nix/store/npfsi1d9ka8zwnxzn3sr08hbwvpapyk7-glibc-2.21/lib/libc.so.6

Thread 1 (Thread 0x7ffff7ff25c0 (LWP 19260)):
#0  0x00007ffff279e65d in pthread_join ()
   from
target:/nix/store/npfsi1d9ka8zwnxzn3sr08hbwvpapyk7-glibc-2.21/lib/libpthread.so.0
#1  0x00007ffff75c85b5 in core.thread.Thread.join(bool) (this=0x7ffff7eee500, 
    rethrow=true) at src/core/thread.d:741
#2  0x00007ffff75c9b7f in thread_joinAll () at src/core/thread.d:2283
#3  0x00007ffff75eed0b in rt_term () at src/rt/dmain2.d:207
#4  0x00007ffff75ef240 in rt.dmain2._d_run_main(int, char**, extern(C)
int(char[][]) function*).runAll() (this=0x7fffffffd990) at src/rt/dmain2.d:476
#5  0x00007ffff75ef1c1 in rt.dmain2._d_run_main(int, char**, extern(C)
int(char[][]) function*).tryExec(scope void() delegate) (this=0x7fffffffd990,
dg=...)
    at src/rt/dmain2.d:447
#6  0x00007ffff75ef12b in _d_run_main (argc=2, argv=0x7fffffffda98, 
    mainFunc=0x4017b0 <D main>) at src/rt/dmain2.d:480
#7  0x0000000000401988 in main ()
#8  0x00007ffff1d06995 in __libc_start_main ()
   from
target:/nix/store/npfsi1d9ka8zwnxzn3sr08hbwvpapyk7-glibc-2.21/lib/libc.so.6
#9  0x00000000004012e9 in _start ()

--
Nov 30 2015