[PATCH v2 0/8] CSV/JSON metric thresholds, fix printf modifiers

Ian Rogers posted 8 patches 1 month, 2 weeks ago
There is a newer version of this series
tools/perf/Documentation/perf-stat.txt        |   1 +
tools/perf/arch/x86/util/iostat.c             |   2 +-
tools/perf/builtin-sched.c                    |   2 +-
tools/perf/builtin-script.c                   |   6 +-
tools/perf/builtin-stat.c                     |   8 ++
tools/perf/builtin-trace.c                    |   2 +-
.../tests/shell/lib/perf_json_output_lint.py  |   5 +-
tools/perf/tests/shell/stat+csv_output.sh     |  24 ++--
tools/perf/util/arm-spe.c                     |   2 +-
tools/perf/util/color.h                       |   9 +-
tools/perf/util/intel-bts.c                   |   2 +-
tools/perf/util/intel-pt.c                    |   2 +-
tools/perf/util/s390-cpumsf.c                 |   2 +-
tools/perf/util/s390-sample-raw.c             |   6 +-
tools/perf/util/stat-display.c                |  85 +++++++++---
tools/perf/util/stat-shadow.c                 | 128 ++++++++++--------
tools/perf/util/stat.h                        |  16 ++-
17 files changed, 191 insertions(+), 111 deletions(-)
[PATCH v2 0/8] CSV/JSON metric thresholds, fix printf modifiers
Posted by Ian Rogers 1 month, 2 weeks ago
Resend. The first send cut-off patches 7 and 8. Sorry.

Metric thresholds are being computed for CSV and JSON output but not
displayed. Rename the color that encodes the threshold as enum values
and use to generate string constants in a CSV column or json
dictionary value.

Add printf attribute to functions in color.h that could support
it. Fix bad printf format strings that this detected.

v2. Don't display metric-value for json output if there is no unit.

Ian Rogers (8):
  perf color: Add printf format checking and resolve issues
  perf stat: Fix/add parameter names for print_metric
  perf stat: Display "none" for NaN with metric only json
  perf stat: Drop metric-unit if unit is NULL
  perf stat: Change color to threshold in print_metric
  perf stat: Display metric threshold value in CSV output
  perf stat: Add metric-threshold to json output
  perf stat: Disable metric thresholds for CSV/JSON metric-only mode

 tools/perf/Documentation/perf-stat.txt        |   1 +
 tools/perf/arch/x86/util/iostat.c             |   2 +-
 tools/perf/builtin-sched.c                    |   2 +-
 tools/perf/builtin-script.c                   |   6 +-
 tools/perf/builtin-stat.c                     |   8 ++
 tools/perf/builtin-trace.c                    |   2 +-
 .../tests/shell/lib/perf_json_output_lint.py  |   5 +-
 tools/perf/tests/shell/stat+csv_output.sh     |  24 ++--
 tools/perf/util/arm-spe.c                     |   2 +-
 tools/perf/util/color.h                       |   9 +-
 tools/perf/util/intel-bts.c                   |   2 +-
 tools/perf/util/intel-pt.c                    |   2 +-
 tools/perf/util/s390-cpumsf.c                 |   2 +-
 tools/perf/util/s390-sample-raw.c             |   6 +-
 tools/perf/util/stat-display.c                |  85 +++++++++---
 tools/perf/util/stat-shadow.c                 | 128 ++++++++++--------
 tools/perf/util/stat.h                        |  16 ++-
 17 files changed, 191 insertions(+), 111 deletions(-)

-- 
2.47.0.rc1.288.g06298d1525-goog
Re: [PATCH v2 0/8] CSV/JSON metric thresholds, fix printf modifiers
Posted by Namhyung Kim 1 month, 1 week ago
On Wed, Oct 09, 2024 at 06:21:26PM -0700, Ian Rogers wrote:
> Resend. The first send cut-off patches 7 and 8. Sorry.
> 
> Metric thresholds are being computed for CSV and JSON output but not
> displayed. Rename the color that encodes the threshold as enum values
> and use to generate string constants in a CSV column or json
> dictionary value.
> 
> Add printf attribute to functions in color.h that could support
> it. Fix bad printf format strings that this detected.
> 
> v2. Don't display metric-value for json output if there is no unit.
> 
> Ian Rogers (8):
>   perf color: Add printf format checking and resolve issues
>   perf stat: Fix/add parameter names for print_metric
>   perf stat: Display "none" for NaN with metric only json
>   perf stat: Drop metric-unit if unit is NULL
>   perf stat: Change color to threshold in print_metric
>   perf stat: Display metric threshold value in CSV output
>   perf stat: Add metric-threshold to json output
>   perf stat: Disable metric thresholds for CSV/JSON metric-only mode

It doesn't apply to the current perf-tools-next.  Can you please rebase?

  Applying: perf color: Add printf format checking and resolve issues
  Patch failed at 0001 perf color: Add printf format checking and resolve issues
  error: patch failed: tools/perf/util/color.h:37
  error: tools/perf/util/color.h: patch does not apply

Thanks,
Namhyung

> 
>  tools/perf/Documentation/perf-stat.txt        |   1 +
>  tools/perf/arch/x86/util/iostat.c             |   2 +-
>  tools/perf/builtin-sched.c                    |   2 +-
>  tools/perf/builtin-script.c                   |   6 +-
>  tools/perf/builtin-stat.c                     |   8 ++
>  tools/perf/builtin-trace.c                    |   2 +-
>  .../tests/shell/lib/perf_json_output_lint.py  |   5 +-
>  tools/perf/tests/shell/stat+csv_output.sh     |  24 ++--
>  tools/perf/util/arm-spe.c                     |   2 +-
>  tools/perf/util/color.h                       |   9 +-
>  tools/perf/util/intel-bts.c                   |   2 +-
>  tools/perf/util/intel-pt.c                    |   2 +-
>  tools/perf/util/s390-cpumsf.c                 |   2 +-
>  tools/perf/util/s390-sample-raw.c             |   6 +-
>  tools/perf/util/stat-display.c                |  85 +++++++++---
>  tools/perf/util/stat-shadow.c                 | 128 ++++++++++--------
>  tools/perf/util/stat.h                        |  16 ++-
>  17 files changed, 191 insertions(+), 111 deletions(-)
> 
> -- 
> 2.47.0.rc1.288.g06298d1525-goog
>