]> Cypherpunks repositories - gostls13.git/commitdiff
[release-branch.go1.22] cmd/trace/v2: make the -pprof actually useful
authorMichael Anthony Knyszek <mknyszek@google.com>
Thu, 11 Apr 2024 21:27:08 +0000 (21:27 +0000)
committerGopher Robot <gobot@golang.org>
Wed, 24 Jul 2024 16:47:17 +0000 (16:47 +0000)
In both the v1 and v2 cmd/trace, pprofMatchingGoroutines will generate
no output at all if the filter name passed to it is the empty string.

This is rather pointless because there are at least two places where we
don't pass a name to filter. Modify pprofMatchingGoroutines to include
*all* goroutines in the trace if the name to filter by is not specified.

For #66782
Fixes #68542
Fixes #68546

Change-Id: I6b72298d676bc93892b075a7426e6e56bc6656c7
Reviewed-on: https://go-review.googlesource.com/c/go/+/578356
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Carlos Amedee <carlos@golang.org>
Auto-Submit: Michael Knyszek <mknyszek@google.com>
(cherry picked from commit d1f2cd8a4968d618caf6757ac648d80f2733e5cb)
Reviewed-on: https://go-review.googlesource.com/c/go/+/600275
Reviewed-by: Michael Knyszek <mknyszek@google.com>
Auto-Submit: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
src/cmd/trace/v2/pprof.go

index 05895eda3dee8f87f13bce35115999ebf3ef2d49..43b0257fc0fc8808a0434c10f594f43d0a1dda11 100644 (file)
@@ -48,7 +48,7 @@ func pprofByRegion(compute computePprofFunc, t *parsedTrace) traceviewer.Profile
 func pprofMatchingGoroutines(name string, t *parsedTrace) (map[tracev2.GoID][]interval, error) {
        res := make(map[tracev2.GoID][]interval)
        for _, g := range t.summary.Goroutines {
-               if g.Name != name {
+               if name != "" && g.Name != name {
                        continue
                }
                endTime := g.EndTime