From 3b8b550a35965245657ea204865baa6ee727297d Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Mon, 4 Dec 2023 15:43:41 -0500 Subject: [PATCH] doc: document runtimecontentionstacks For #57071. Change-Id: Ic1645af57aa589917c67154a5e4ad0b4edd7ba90 Reviewed-on: https://go-review.googlesource.com/c/go/+/547058 Reviewed-by: Michael Knyszek Reviewed-by: Rhys Hiltner LUCI-TryBot-Result: Go LUCI Auto-Submit: Michael Pratt --- doc/godebug.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/godebug.md b/doc/godebug.md index f7baea30b2..9710940118 100644 --- a/doc/godebug.md +++ b/doc/godebug.md @@ -178,6 +178,13 @@ should adjust their Linux configuration according to the recommendations in the [GC guide](/doc/gc-guide#Linux_transparent_huge_pages), or switch to a Linux distribution that disables transparent huge pages altogether. +Go 1.22 added contention on runtime-internal locks to the [`mutex` +profile](/pkg/runtime/pprof#Profile). Contention on these locks is always +reported at `runtime._LostContendedRuntimeLock`. Complete stack traces of +runtime locks can be enabled with the [`runtimecontentionstacks` +setting](/pkg/runtime#hdr-Environment_Variable). These stack traces have +non-standard semantics, see setting documentation for details. + ### Go 1.21 Go 1.21 made it a run-time error to call `panic` with a nil interface value, -- 2.48.1