Thread overview
[Issue 20270] [REG2.087] Deadlock in garbage collection when running processes in parallel
Oct 06, 2019
Vladimir Panteleev
Oct 06, 2019
Rainer Schuetze
Oct 06, 2019
Vladimir Panteleev
Oct 06, 2019
Vladimir Panteleev
Oct 06, 2019
Dlang Bot
Oct 06, 2019
Rainer Schuetze
Nov 28, 2019
Rainer Schuetze
October 06, 2019
https://issues.dlang.org/show_bug.cgi?id=20270

igor.khasilev@gmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |igor.khasilev@gmail.com

--- Comment #1 from igor.khasilev@gmail.com ---
May (or may not) be related https://issues.dlang.org/show_bug.cgi?id=20256 if scanthread do not block SIGUSR1 and SIGUSR2

--
October 06, 2019
https://issues.dlang.org/show_bug.cgi?id=20270

--- Comment #2 from Vladimir Panteleev <dlang-bugzilla@thecybershadow.net> ---
(In reply to igor.khasilev from comment #1)
> May (or may not) be related https://issues.dlang.org/show_bug.cgi?id=20256 if scanthread do not block SIGUSR1 and SIGUSR2

Unfortunately `digger run stable+druntime#2813 -- dmd -run test` still hangs.

--
October 06, 2019
https://issues.dlang.org/show_bug.cgi?id=20270

--- Comment #3 from Rainer Schuetze <r.sagitario@gmx.de> ---
I cannot reproduce locally in a VM. Does the problem go away with --DRT-gcopt=parallel:0 ?

--
October 06, 2019
https://issues.dlang.org/show_bug.cgi?id=20270

--- Comment #4 from Vladimir Panteleev <dlang-bugzilla@thecybershadow.net> ---
(In reply to Rainer Schuetze from comment #3)
> Does the problem go away with --DRT-gcopt=parallel:0 ?

Yes.

--
October 06, 2019
https://issues.dlang.org/show_bug.cgi?id=20270

--- Comment #5 from Vladimir Panteleev <dlang-bugzilla@thecybershadow.net> ---
(In reply to Rainer Schuetze from comment #3)
> I cannot reproduce locally in a VM.

>From experimenting with taskset, it seems that there need to be at least 5
physical cores to run threads on for this bug to be reproduced. (Does not reproduce with `taskset f` but does reproduce with `taskset 1f`.)

--
October 06, 2019
https://issues.dlang.org/show_bug.cgi?id=20270

Dlang Bot <dlang-bot@dlang.rocks> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull

--- Comment #6 from Dlang Bot <dlang-bot@dlang.rocks> ---
@rainers created dlang/druntime pull request #2816 "fix Issue 20270 - [REG2.087] Deadlock in garbage collection when runn…" fixing this issue:

- fix Issue 20270 - [REG2.087] Deadlock in garbage collection when running processes in parallel

  start scan threads while the world isn't suspended

https://github.com/dlang/druntime/pull/2816

--
October 06, 2019
https://issues.dlang.org/show_bug.cgi?id=20270

--- Comment #7 from Rainer Schuetze <r.sagitario@gmx.de> ---
I have reproduced the issue when running the test for a higher number of times. Not sure why this doesn't appear more often. Please try https://github.com/dlang/druntime/pull/2816

--
November 28, 2019
https://issues.dlang.org/show_bug.cgi?id=20270

Rainer Schuetze <r.sagitario@gmx.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #8 from Rainer Schuetze <r.sagitario@gmx.de> ---
Not sure why this wasn't closed by the bot when https://github.com/dlang/druntime/pull/2816 got merged.

--