`CPUTimeCounters` unconditionally creates
`CPUTimeGroups::CPUTimeType::gc_total`. Since only Parallel and G1 are
supported by this framework/class, this leads to publishing a counter that
always resolves to 0. This may be contradictory for an end-user especially so
as we now support logging GC CPU time for any GC inside Hotspot. For an example
using `-XX:+UseZGC -Xlog:cpu` we get
[7.907s][info][cpu] === CPU time Statistics
=============================================================
[7.907s][info][cpu]
CPUs
[7.907s][info][cpu]
s % utilized
[7.907s][info][cpu] Process
[7.907s][info][cpu] Total
186.9562 100.00 23.6
[7.907s][info][cpu] Garbage Collection
0.6700 0.36 0.1
[7.907s][info][cpu] GC Threads
0.6692 0.36 0.1
[7.907s][info][cpu] VM Thread
0.0008 0.00 0.0
[7.907s][info][cpu]
=====================================================================================
But `jcmd $(pgrep -n java) PerfCounter.print | grep -E
"sun.threads.total_gc_cpu_time"` prints: `sun.threads.total_gc_cpu_time=0`.
-------------
Commit messages:
- Only create sun.threads.total_gc_cpu_time if we run a supported GC
Changes: https://git.openjdk.org/jdk/pull/28803/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28803&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8373625
Stats: 4 lines in 1 file changed: 3 ins; 0 del; 1 mod
Patch: https://git.openjdk.org/jdk/pull/28803.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/28803/head:pull/28803
PR: https://git.openjdk.org/jdk/pull/28803