runtime: merge workarounds to false deadlocks #40518
Labels
compiler/runtime
Issues related to the Go compiler and/or runtime.
NeedsFix
The path to resolution is known, but the work has not been done.
Milestone
In #40368, I avoided false deadlocks from
startm
insysmon
by reserving M ids in advance to make it look like the new M is already running tocheckdead
.Later, I discovered that @dvyukov fixed a nearly identical issue in #6070 by temporarily decrementing the number of idle locked M's, to make checkdead see an extra M. Slightly different approach, but same end result.
We should merge these two approaches back to one just to keep things simpler and easier to understand.
cc @aclements @mknyszek @ianlancetaylor
The text was updated successfully, but these errors were encountered: