failing version, -Ds output, without -threaded created capset 0 of type 2 created capset 1 of type 3 assigned cap 0 to capset 0 assigned cap 0 to capset 1 new task (taskCount: 1) cap 0: created thread 1 cap 0: thread 1 appended to run queue new bound thread (1) cap 0: schedule() cap 0: running thread 1 (ThreadRunGHC) cap 0: message: thread 1 blocking on blackhole 0x7f3018d067c0 cap 0: thread 1 blocked on thread 1 cap 0: thread 1 stopped (blocked on black hole owned by thread 1) thread 1 @ 0x7f3018d05390 is blocked on a black hole 0x7f3018d067c0 (TSO_DIRTY) deadlocked, forcing major GC... all threads: threads on capability 0: other threads: thread 1 @ 0x7f3018d05390 is blocked on a black hole 0x7f3018d067c0 (TSO_DIRTY) resurrecting thread 1 cap 0: thread 1 appended to run queue cap 0: raising exception in thread 1. cap 0: running thread 1 (ThreadRunGHC) cap 0: thread 1 stopped (suspended while making a foreign call) cap 0: running thread 1 (ThreadRunGHC) hello optimum-server: <> cap 0: thread 1 stopped (suspended while making a foreign call) new task (taskCount: 1) cap 0: created thread 2 cap 0: thread 2 appended to run queue new bound thread (2) cap 0: schedule() cap 0: running thread 2 (ThreadRunGHC) cap 0: thread 2 stopped (finished) bound thread (2) finished task exiting new task (taskCount: 1) all threads: threads on capability 0: other threads: thread 1 @ 0x7f3018dfe658 is blocked on an external call (TSO_DIRTY) deleting all threads removed cap 0 from capset 0 removed cap 0 from capset 1 deleted capset 0 deleted capset 1 task exiting freeing task manager, 1 tasks still running