Commit 94aafb74 authored by Jiri Olsa's avatar Jiri Olsa Committed by Arnaldo Carvalho de Melo

perf vendor events intel: Fix wrong filter_band* values for uncore events

Michael reported that he could not stat following event:

  $ perf stat -e unc_p_freq_ge_1200mhz_cycles -a -- ls
  event syntax error: '..e_1200mhz_cycles'
                                    \___ value too big for format, maximum is 255
  Run 'perf list' for a list of valid events

The event is unwrapped into:

  uncore_pcu/event=0xb,filter_band0=1200/

where filter_band0 format says it's one byte only:

  # cat uncore_pcu/format/filter_band0
  config1:0-7

while JSON files specifies bigger number:

  "Filter": "filter_band0=1200",

all the filter_band* formats show 1 byte width:

  # cat uncore_pcu/format/filter_band1
  config1:8-15
  # cat uncore_pcu/format/filter_band2
  config1:16-23
  # cat uncore_pcu/format/filter_band3
  config1:24-31

The reason of the issue is that filter_band* values are supposed to be
in 100Mhz units.. it's stated in the JSON help for the events, like:

  filter_band3=XXX, with XXX in 100Mhz units

This patch divides the filter_band* values by 100, plus there's couple
of changes that actually change the number completely, like:

  -        "Filter": "edge=1,filter_band2=4000",
  +        "Filter": "edge=1,filter_band2=30",
Reported-by: default avatarMichael Petlan <mpetlan@redhat.com>
Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
Acked-by: default avatarAndi Kleen <ak@linux.intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20181010080339.GB15790@kravaSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 1b9caa10
...@@ -188,7 +188,7 @@ ...@@ -188,7 +188,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xb", "EventCode": "0xb",
"EventName": "UNC_P_FREQ_GE_1200MHZ_CYCLES", "EventName": "UNC_P_FREQ_GE_1200MHZ_CYCLES",
"Filter": "filter_band0=1200", "Filter": "filter_band0=12",
"MetricExpr": "(UNC_P_FREQ_GE_1200MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_1200MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_1200mhz_cycles %", "MetricName": "freq_ge_1200mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -199,7 +199,7 @@ ...@@ -199,7 +199,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xc", "EventCode": "0xc",
"EventName": "UNC_P_FREQ_GE_2000MHZ_CYCLES", "EventName": "UNC_P_FREQ_GE_2000MHZ_CYCLES",
"Filter": "filter_band1=2000", "Filter": "filter_band1=20",
"MetricExpr": "(UNC_P_FREQ_GE_2000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_2000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_2000mhz_cycles %", "MetricName": "freq_ge_2000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -210,7 +210,7 @@ ...@@ -210,7 +210,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xd", "EventCode": "0xd",
"EventName": "UNC_P_FREQ_GE_3000MHZ_CYCLES", "EventName": "UNC_P_FREQ_GE_3000MHZ_CYCLES",
"Filter": "filter_band2=3000", "Filter": "filter_band2=30",
"MetricExpr": "(UNC_P_FREQ_GE_3000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_3000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_3000mhz_cycles %", "MetricName": "freq_ge_3000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -221,7 +221,7 @@ ...@@ -221,7 +221,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xe", "EventCode": "0xe",
"EventName": "UNC_P_FREQ_GE_4000MHZ_CYCLES", "EventName": "UNC_P_FREQ_GE_4000MHZ_CYCLES",
"Filter": "filter_band3=4000", "Filter": "filter_band3=40",
"MetricExpr": "(UNC_P_FREQ_GE_4000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_4000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_4000mhz_cycles %", "MetricName": "freq_ge_4000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -232,7 +232,7 @@ ...@@ -232,7 +232,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xb", "EventCode": "0xb",
"EventName": "UNC_P_FREQ_GE_1200MHZ_TRANSITIONS", "EventName": "UNC_P_FREQ_GE_1200MHZ_TRANSITIONS",
"Filter": "edge=1,filter_band0=1200", "Filter": "edge=1,filter_band0=12",
"MetricExpr": "(UNC_P_FREQ_GE_1200MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_1200MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_1200mhz_cycles %", "MetricName": "freq_ge_1200mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -243,7 +243,7 @@ ...@@ -243,7 +243,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xc", "EventCode": "0xc",
"EventName": "UNC_P_FREQ_GE_2000MHZ_TRANSITIONS", "EventName": "UNC_P_FREQ_GE_2000MHZ_TRANSITIONS",
"Filter": "edge=1,filter_band1=2000", "Filter": "edge=1,filter_band1=20",
"MetricExpr": "(UNC_P_FREQ_GE_2000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_2000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_2000mhz_cycles %", "MetricName": "freq_ge_2000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -254,7 +254,7 @@ ...@@ -254,7 +254,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xd", "EventCode": "0xd",
"EventName": "UNC_P_FREQ_GE_3000MHZ_TRANSITIONS", "EventName": "UNC_P_FREQ_GE_3000MHZ_TRANSITIONS",
"Filter": "edge=1,filter_band2=4000", "Filter": "edge=1,filter_band2=30",
"MetricExpr": "(UNC_P_FREQ_GE_3000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_3000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_3000mhz_cycles %", "MetricName": "freq_ge_3000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -265,7 +265,7 @@ ...@@ -265,7 +265,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xe", "EventCode": "0xe",
"EventName": "UNC_P_FREQ_GE_4000MHZ_TRANSITIONS", "EventName": "UNC_P_FREQ_GE_4000MHZ_TRANSITIONS",
"Filter": "edge=1,filter_band3=4000", "Filter": "edge=1,filter_band3=40",
"MetricExpr": "(UNC_P_FREQ_GE_4000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_4000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_4000mhz_cycles %", "MetricName": "freq_ge_4000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
......
...@@ -187,7 +187,7 @@ ...@@ -187,7 +187,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xb", "EventCode": "0xb",
"EventName": "UNC_P_FREQ_GE_1200MHZ_CYCLES", "EventName": "UNC_P_FREQ_GE_1200MHZ_CYCLES",
"Filter": "filter_band0=1200", "Filter": "filter_band0=12",
"MetricExpr": "(UNC_P_FREQ_GE_1200MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_1200MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_1200mhz_cycles %", "MetricName": "freq_ge_1200mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -198,7 +198,7 @@ ...@@ -198,7 +198,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xc", "EventCode": "0xc",
"EventName": "UNC_P_FREQ_GE_2000MHZ_CYCLES", "EventName": "UNC_P_FREQ_GE_2000MHZ_CYCLES",
"Filter": "filter_band1=2000", "Filter": "filter_band1=20",
"MetricExpr": "(UNC_P_FREQ_GE_2000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_2000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_2000mhz_cycles %", "MetricName": "freq_ge_2000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -209,7 +209,7 @@ ...@@ -209,7 +209,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xd", "EventCode": "0xd",
"EventName": "UNC_P_FREQ_GE_3000MHZ_CYCLES", "EventName": "UNC_P_FREQ_GE_3000MHZ_CYCLES",
"Filter": "filter_band2=3000", "Filter": "filter_band2=30",
"MetricExpr": "(UNC_P_FREQ_GE_3000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_3000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_3000mhz_cycles %", "MetricName": "freq_ge_3000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -220,7 +220,7 @@ ...@@ -220,7 +220,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xe", "EventCode": "0xe",
"EventName": "UNC_P_FREQ_GE_4000MHZ_CYCLES", "EventName": "UNC_P_FREQ_GE_4000MHZ_CYCLES",
"Filter": "filter_band3=4000", "Filter": "filter_band3=40",
"MetricExpr": "(UNC_P_FREQ_GE_4000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_4000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_4000mhz_cycles %", "MetricName": "freq_ge_4000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -231,7 +231,7 @@ ...@@ -231,7 +231,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xb", "EventCode": "0xb",
"EventName": "UNC_P_FREQ_GE_1200MHZ_TRANSITIONS", "EventName": "UNC_P_FREQ_GE_1200MHZ_TRANSITIONS",
"Filter": "edge=1,filter_band0=1200", "Filter": "edge=1,filter_band0=12",
"MetricExpr": "(UNC_P_FREQ_GE_1200MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_1200MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_1200mhz_cycles %", "MetricName": "freq_ge_1200mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -242,7 +242,7 @@ ...@@ -242,7 +242,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xc", "EventCode": "0xc",
"EventName": "UNC_P_FREQ_GE_2000MHZ_TRANSITIONS", "EventName": "UNC_P_FREQ_GE_2000MHZ_TRANSITIONS",
"Filter": "edge=1,filter_band1=2000", "Filter": "edge=1,filter_band1=20",
"MetricExpr": "(UNC_P_FREQ_GE_2000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_2000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_2000mhz_cycles %", "MetricName": "freq_ge_2000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -253,7 +253,7 @@ ...@@ -253,7 +253,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xd", "EventCode": "0xd",
"EventName": "UNC_P_FREQ_GE_3000MHZ_TRANSITIONS", "EventName": "UNC_P_FREQ_GE_3000MHZ_TRANSITIONS",
"Filter": "edge=1,filter_band2=4000", "Filter": "edge=1,filter_band2=30",
"MetricExpr": "(UNC_P_FREQ_GE_3000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_3000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_3000mhz_cycles %", "MetricName": "freq_ge_3000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
...@@ -264,7 +264,7 @@ ...@@ -264,7 +264,7 @@
"Counter": "0,1,2,3", "Counter": "0,1,2,3",
"EventCode": "0xe", "EventCode": "0xe",
"EventName": "UNC_P_FREQ_GE_4000MHZ_TRANSITIONS", "EventName": "UNC_P_FREQ_GE_4000MHZ_TRANSITIONS",
"Filter": "edge=1,filter_band3=4000", "Filter": "edge=1,filter_band3=40",
"MetricExpr": "(UNC_P_FREQ_GE_4000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.", "MetricExpr": "(UNC_P_FREQ_GE_4000MHZ_CYCLES / UNC_P_CLOCKTICKS) * 100.",
"MetricName": "freq_ge_4000mhz_cycles %", "MetricName": "freq_ge_4000mhz_cycles %",
"PerPkg": "1", "PerPkg": "1",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment