* [PATCH v4 00/12] Foundations for metric generation with Python
@ 2024-09-26 17:35 Ian Rogers
2024-09-26 17:35 ` [PATCH v4 01/12] perf jevents: Allow multiple metricgroups.json files Ian Rogers
` (11 more replies)
0 siblings, 12 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Metrics in the perf tool come in via json. Json doesn't allow
comments, line breaks, etc. making it an inconvenient way to write
metrics. Further, it is useful to detect when writing a metric that
the event specified is supported within the event json for a model.
These patches introduce infrastructure and fixes for the addition of
metrics written in python for Arm64, AMD Zen and Intel CPUs. Later
patches will introduce the metrics split apart by the vendor.
v4. Rebase and small Build/Makefile tweak
v3. Some code tidying, make the input directory a command line
argument, but no other functional or output changes.
v2. Fixes two type issues in the python code but no functional or
output changes.
Ian Rogers (12):
perf jevents: Allow multiple metricgroups.json files
perf jevents: Update metric constraint support
perf jevents: Add descriptions to metricgroup abstraction
perf jevents: Allow metric groups not to be named
perf jevents: Support parsing negative exponents
perf jevents: Term list fix in event parsing
perf jevents: Add threshold expressions to Metric
perf jevents: Move json encoding to its own functions
perf jevents: Drop duplicate pending metrics
perf jevents: Skip optional metrics in metric group list
perf jevents: Build support for generating metrics from python
perf jevents: Add load event json to verify and allow fallbacks
tools/perf/.gitignore | 2 +
tools/perf/Makefile.perf | 23 +++-
tools/perf/pmu-events/Build | 62 +++++++++-
tools/perf/pmu-events/amd_metrics.py | 42 +++++++
tools/perf/pmu-events/arm64_metrics.py | 43 +++++++
tools/perf/pmu-events/intel_metrics.py | 42 +++++++
tools/perf/pmu-events/jevents.py | 6 +-
tools/perf/pmu-events/metric.py | 162 +++++++++++++++++++++----
tools/perf/pmu-events/metric_test.py | 4 +
9 files changed, 348 insertions(+), 38 deletions(-)
create mode 100755 tools/perf/pmu-events/amd_metrics.py
create mode 100755 tools/perf/pmu-events/arm64_metrics.py
create mode 100755 tools/perf/pmu-events/intel_metrics.py
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH v4 01/12] perf jevents: Allow multiple metricgroups.json files
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 02/12] perf jevents: Update metric constraint support Ian Rogers
` (10 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Allow multiple metricgroups.json files by handling any file ending
with metricgroups.json as a metricgroups file.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/jevents.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/perf/pmu-events/jevents.py b/tools/perf/pmu-events/jevents.py
index bb0a5d92df4a..8d2cecb87e88 100755
--- a/tools/perf/pmu-events/jevents.py
+++ b/tools/perf/pmu-events/jevents.py
@@ -612,7 +612,7 @@ def preprocess_one_file(parents: Sequence[str], item: os.DirEntry) -> None:
if not item.is_file() or not item.name.endswith('.json'):
return
- if item.name == 'metricgroups.json':
+ if item.name.endswith('metricgroups.json'):
metricgroup_descriptions = json.load(open(item.path))
for mgroup in metricgroup_descriptions:
assert len(mgroup) > 1, parents
@@ -665,7 +665,7 @@ def process_one_file(parents: Sequence[str], item: os.DirEntry) -> None:
# Ignore other directories. If the file name does not have a .json
# extension, ignore it. It could be a readme.txt for instance.
- if not item.is_file() or not item.name.endswith('.json') or item.name == 'metricgroups.json':
+ if not item.is_file() or not item.name.endswith('.json') or item.name.endswith('metricgroups.json'):
return
add_events_table_entries(item, get_topic(item.name))
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 02/12] perf jevents: Update metric constraint support
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
2024-09-26 17:35 ` [PATCH v4 01/12] perf jevents: Allow multiple metricgroups.json files Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 03/12] perf jevents: Add descriptions to metricgroup abstraction Ian Rogers
` (9 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Previous metric constraints were binary, either none or don't group
when the NMI watchdog is present. Update to match the definitions in
'enum metric_event_groups' in pmu-events.h.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/metric.py | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/tools/perf/pmu-events/metric.py b/tools/perf/pmu-events/metric.py
index 92acd89ed97a..8a718dd4b1fe 100644
--- a/tools/perf/pmu-events/metric.py
+++ b/tools/perf/pmu-events/metric.py
@@ -4,8 +4,14 @@ import ast
import decimal
import json
import re
+from enum import Enum
from typing import Dict, List, Optional, Set, Tuple, Union
+class MetricConstraint(Enum):
+ GROUPED_EVENTS = 0
+ NO_GROUP_EVENTS = 1
+ NO_GROUP_EVENTS_NMI = 2
+ NO_GROUP_EVENTS_SMT = 3
class Expression:
"""Abstract base class of elements in a metric expression."""
@@ -423,14 +429,14 @@ class Metric:
groups: Set[str]
expr: Expression
scale_unit: str
- constraint: bool
+ constraint: MetricConstraint
def __init__(self,
name: str,
description: str,
expr: Expression,
scale_unit: str,
- constraint: bool = False):
+ constraint: MetricConstraint = MetricConstraint.GROUPED_EVENTS):
self.name = name
self.description = description
self.expr = expr.Simplify()
@@ -464,8 +470,8 @@ class Metric:
'MetricExpr': self.expr.ToPerfJson(),
'ScaleUnit': self.scale_unit
}
- if self.constraint:
- result['MetricConstraint'] = 'NO_NMI_WATCHDOG'
+ if self.constraint != MetricConstraint.GROUPED_EVENTS:
+ result['MetricConstraint'] = self.constraint.name
return result
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 03/12] perf jevents: Add descriptions to metricgroup abstraction
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
2024-09-26 17:35 ` [PATCH v4 01/12] perf jevents: Allow multiple metricgroups.json files Ian Rogers
2024-09-26 17:35 ` [PATCH v4 02/12] perf jevents: Update metric constraint support Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 04/12] perf jevents: Allow metric groups not to be named Ian Rogers
` (8 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Add a function to recursively generate metric group descriptions.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/metric.py | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/tools/perf/pmu-events/metric.py b/tools/perf/pmu-events/metric.py
index 8a718dd4b1fe..1de4fb72c75e 100644
--- a/tools/perf/pmu-events/metric.py
+++ b/tools/perf/pmu-events/metric.py
@@ -475,6 +475,8 @@ class Metric:
return result
+ def ToMetricGroupDescriptions(self, root: bool = True) -> Dict[str, str]:
+ return {}
class _MetricJsonEncoder(json.JSONEncoder):
"""Special handling for Metric objects."""
@@ -493,10 +495,12 @@ class MetricGroup:
which can facilitate arrangements similar to trees.
"""
- def __init__(self, name: str, metric_list: List[Union[Metric,
- 'MetricGroup']]):
+ def __init__(self, name: str,
+ metric_list: List[Union[Metric, 'MetricGroup']],
+ description: Optional[str] = None):
self.name = name
self.metric_list = metric_list
+ self.description = description
for metric in metric_list:
metric.AddToMetricGroup(self)
@@ -516,6 +520,12 @@ class MetricGroup:
def ToPerfJson(self) -> str:
return json.dumps(sorted(self.Flatten()), indent=2, cls=_MetricJsonEncoder)
+ def ToMetricGroupDescriptions(self, root: bool = True) -> Dict[str, str]:
+ result = {self.name: self.description} if self.description else {}
+ for x in self.metric_list:
+ result.update(x.ToMetricGroupDescriptions(False))
+ return result
+
def __str__(self) -> str:
return self.ToPerfJson()
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 04/12] perf jevents: Allow metric groups not to be named
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
` (2 preceding siblings ...)
2024-09-26 17:35 ` [PATCH v4 03/12] perf jevents: Add descriptions to metricgroup abstraction Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 05/12] perf jevents: Support parsing negative exponents Ian Rogers
` (7 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
It can be convenient to have unnamed metric groups for the sake of
organizing other metrics and metric groups. An unspecified name
shouldn't contribute to the MetricGroup json value, so don't record
it.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/metric.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tools/perf/pmu-events/metric.py b/tools/perf/pmu-events/metric.py
index 1de4fb72c75e..847b614d40d5 100644
--- a/tools/perf/pmu-events/metric.py
+++ b/tools/perf/pmu-events/metric.py
@@ -455,7 +455,8 @@ class Metric:
def AddToMetricGroup(self, group):
"""Callback used when being added to a MetricGroup."""
- self.groups.add(group.name)
+ if group.name:
+ self.groups.add(group.name)
def Flatten(self) -> Set['Metric']:
"""Return a leaf metric."""
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 05/12] perf jevents: Support parsing negative exponents
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
` (3 preceding siblings ...)
2024-09-26 17:35 ` [PATCH v4 04/12] perf jevents: Allow metric groups not to be named Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 06/12] perf jevents: Term list fix in event parsing Ian Rogers
` (6 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Support negative exponents when parsing from a json metric string by
making the numbers after the 'e' optional in the 'Event' insertion fix
up.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/metric.py | 2 +-
tools/perf/pmu-events/metric_test.py | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/tools/perf/pmu-events/metric.py b/tools/perf/pmu-events/metric.py
index 847b614d40d5..31eea2f45152 100644
--- a/tools/perf/pmu-events/metric.py
+++ b/tools/perf/pmu-events/metric.py
@@ -573,7 +573,7 @@ def ParsePerfJson(orig: str) -> Expression:
# a double by the Bison parser
py = re.sub(r'0Event\(r"[xX]([0-9a-fA-F]*)"\)', r'Event("0x\1")', py)
# Convert accidentally converted scientific notation constants back
- py = re.sub(r'([0-9]+)Event\(r"(e[0-9]+)"\)', r'\1\2', py)
+ py = re.sub(r'([0-9]+)Event\(r"(e[0-9]*)"\)', r'\1\2', py)
# Convert all the known keywords back from events to just the keyword
keywords = ['if', 'else', 'min', 'max', 'd_ratio', 'source_count', 'has_event', 'strcmp_cpuid_str']
for kw in keywords:
diff --git a/tools/perf/pmu-events/metric_test.py b/tools/perf/pmu-events/metric_test.py
index ee22ff43ddd7..8acfe4652b55 100755
--- a/tools/perf/pmu-events/metric_test.py
+++ b/tools/perf/pmu-events/metric_test.py
@@ -61,6 +61,10 @@ class TestMetricExpressions(unittest.TestCase):
after = before
self.assertEqual(ParsePerfJson(before).ToPerfJson(), after)
+ before = r'a + 3e-12 + b'
+ after = before
+ self.assertEqual(ParsePerfJson(before).ToPerfJson(), after)
+
def test_IfElseTests(self):
# if-else needs rewriting to Select and back.
before = r'Event1 if #smt_on else Event2'
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 06/12] perf jevents: Term list fix in event parsing
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
` (4 preceding siblings ...)
2024-09-26 17:35 ` [PATCH v4 05/12] perf jevents: Support parsing negative exponents Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 07/12] perf jevents: Add threshold expressions to Metric Ian Rogers
` (5 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Fix events seemingly broken apart at a comma.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/metric.py | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/tools/perf/pmu-events/metric.py b/tools/perf/pmu-events/metric.py
index 31eea2f45152..0f4e67e5cfea 100644
--- a/tools/perf/pmu-events/metric.py
+++ b/tools/perf/pmu-events/metric.py
@@ -568,6 +568,12 @@ def ParsePerfJson(orig: str) -> Expression:
r'Event(r"\1")', py)
# If it started with a # it should have been a literal, rather than an event name
py = re.sub(r'#Event\(r"([^"]*)"\)', r'Literal("#\1")', py)
+ # Fix events wrongly broken at a ','
+ while True:
+ prev_py = py
+ py = re.sub(r'Event\(r"([^"]*)"\),Event\(r"([^"]*)"\)', r'Event(r"\1,\2")', py)
+ if py == prev_py:
+ break
# Convert accidentally converted hex constants ("0Event(r"xDEADBEEF)"") back to a constant,
# but keep it wrapped in Event(), otherwise Python drops the 0x prefix and it gets interpreted as
# a double by the Bison parser
@@ -586,7 +592,6 @@ def ParsePerfJson(orig: str) -> Expression:
parsed = ast.fix_missing_locations(parsed)
return _Constify(eval(compile(parsed, orig, 'eval')))
-
def RewriteMetricsInTermsOfOthers(metrics: List[Tuple[str, str, Expression]]
)-> Dict[Tuple[str, str], Expression]:
"""Shorten metrics by rewriting in terms of others.
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 07/12] perf jevents: Add threshold expressions to Metric
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
` (5 preceding siblings ...)
2024-09-26 17:35 ` [PATCH v4 06/12] perf jevents: Term list fix in event parsing Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 08/12] perf jevents: Move json encoding to its own functions Ian Rogers
` (4 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Allow threshold expressions for metrics to be generated.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/metric.py | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/tools/perf/pmu-events/metric.py b/tools/perf/pmu-events/metric.py
index 0f4e67e5cfea..e81fed2e29b5 100644
--- a/tools/perf/pmu-events/metric.py
+++ b/tools/perf/pmu-events/metric.py
@@ -430,13 +430,15 @@ class Metric:
expr: Expression
scale_unit: str
constraint: MetricConstraint
+ threshold: Optional[Expression]
def __init__(self,
name: str,
description: str,
expr: Expression,
scale_unit: str,
- constraint: MetricConstraint = MetricConstraint.GROUPED_EVENTS):
+ constraint: MetricConstraint = MetricConstraint.GROUPED_EVENTS,
+ threshold: Optional[Expression] = None):
self.name = name
self.description = description
self.expr = expr.Simplify()
@@ -447,6 +449,7 @@ class Metric:
else:
self.scale_unit = f'1{scale_unit}'
self.constraint = constraint
+ self.threshold = threshold
self.groups = set()
def __lt__(self, other):
@@ -473,6 +476,8 @@ class Metric:
}
if self.constraint != MetricConstraint.GROUPED_EVENTS:
result['MetricConstraint'] = self.constraint.name
+ if self.threshold:
+ result['MetricThreshold'] = self.threshold.ToPerfJson()
return result
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 08/12] perf jevents: Move json encoding to its own functions
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
` (6 preceding siblings ...)
2024-09-26 17:35 ` [PATCH v4 07/12] perf jevents: Add threshold expressions to Metric Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 09/12] perf jevents: Drop duplicate pending metrics Ian Rogers
` (3 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Have dedicate encode functions rather than having them embedded in
MetricGroup. This is to provide some uniformity in the Metric ToXXX
routines.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/metric.py | 34 +++++++++++++++++++++------------
1 file changed, 22 insertions(+), 12 deletions(-)
diff --git a/tools/perf/pmu-events/metric.py b/tools/perf/pmu-events/metric.py
index e81fed2e29b5..b39189182608 100644
--- a/tools/perf/pmu-events/metric.py
+++ b/tools/perf/pmu-events/metric.py
@@ -484,15 +484,6 @@ class Metric:
def ToMetricGroupDescriptions(self, root: bool = True) -> Dict[str, str]:
return {}
-class _MetricJsonEncoder(json.JSONEncoder):
- """Special handling for Metric objects."""
-
- def default(self, o):
- if isinstance(o, Metric):
- return o.ToPerfJson()
- return json.JSONEncoder.default(self, o)
-
-
class MetricGroup:
"""A group of metrics.
@@ -523,8 +514,11 @@ class MetricGroup:
return result
- def ToPerfJson(self) -> str:
- return json.dumps(sorted(self.Flatten()), indent=2, cls=_MetricJsonEncoder)
+ def ToPerfJson(self) -> List[Dict[str, str]]:
+ result = []
+ for x in sorted(self.Flatten()):
+ result.append(x.ToPerfJson())
+ return result
def ToMetricGroupDescriptions(self, root: bool = True) -> Dict[str, str]:
result = {self.name: self.description} if self.description else {}
@@ -533,7 +527,23 @@ class MetricGroup:
return result
def __str__(self) -> str:
- return self.ToPerfJson()
+ return str(self.ToPerfJson())
+
+
+def JsonEncodeMetric(x: MetricGroup):
+ class MetricJsonEncoder(json.JSONEncoder):
+ """Special handling for Metric objects."""
+
+ def default(self, o):
+ if isinstance(o, Metric) or isinstance(o, MetricGroup):
+ return o.ToPerfJson()
+ return json.JSONEncoder.default(self, o)
+
+ return json.dumps(x, indent=2, cls=MetricJsonEncoder)
+
+
+def JsonEncodeMetricGroupDescriptions(x: MetricGroup):
+ return json.dumps(x.ToMetricGroupDescriptions(), indent=2)
class _RewriteIfExpToSelect(ast.NodeTransformer):
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 09/12] perf jevents: Drop duplicate pending metrics
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
` (7 preceding siblings ...)
2024-09-26 17:35 ` [PATCH v4 08/12] perf jevents: Move json encoding to its own functions Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 10/12] perf jevents: Skip optional metrics in metric group list Ian Rogers
` (2 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Drop adding a pending metric if there is an existing one.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/jevents.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/pmu-events/jevents.py b/tools/perf/pmu-events/jevents.py
index 8d2cecb87e88..7b4239e8b08b 100755
--- a/tools/perf/pmu-events/jevents.py
+++ b/tools/perf/pmu-events/jevents.py
@@ -473,7 +473,7 @@ def add_events_table_entries(item: os.DirEntry, topic: str) -> None:
for e in read_json_events(item.path, topic):
if e.name:
_pending_events.append(e)
- if e.metric_name:
+ if e.metric_name and not any(e.metric_name == x.metric_name for x in _pending_metrics):
_pending_metrics.append(e)
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 10/12] perf jevents: Skip optional metrics in metric group list
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
` (8 preceding siblings ...)
2024-09-26 17:35 ` [PATCH v4 09/12] perf jevents: Drop duplicate pending metrics Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 11/12] perf jevents: Build support for generating metrics from python Ian Rogers
2024-09-26 17:35 ` [PATCH v4 12/12] perf jevents: Add load event json to verify and allow fallbacks Ian Rogers
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
For metric groups, skip metrics in the list that are None. This allows
functions to better optionally return metrics.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/metric.py | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/tools/perf/pmu-events/metric.py b/tools/perf/pmu-events/metric.py
index b39189182608..dd8fd06940e6 100644
--- a/tools/perf/pmu-events/metric.py
+++ b/tools/perf/pmu-events/metric.py
@@ -493,13 +493,15 @@ class MetricGroup:
"""
def __init__(self, name: str,
- metric_list: List[Union[Metric, 'MetricGroup']],
+ metric_list: List[Union[Optional[Metric], Optional['MetricGroup']]],
description: Optional[str] = None):
self.name = name
- self.metric_list = metric_list
+ self.metric_list = []
self.description = description
for metric in metric_list:
- metric.AddToMetricGroup(self)
+ if metric:
+ self.metric_list.append(metric)
+ metric.AddToMetricGroup(self)
def AddToMetricGroup(self, group):
"""Callback used when a MetricGroup is added into another."""
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 11/12] perf jevents: Build support for generating metrics from python
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
` (9 preceding siblings ...)
2024-09-26 17:35 ` [PATCH v4 10/12] perf jevents: Skip optional metrics in metric group list Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-09-26 17:35 ` [PATCH v4 12/12] perf jevents: Add load event json to verify and allow fallbacks Ian Rogers
11 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Generate extra-metrics.json and extra-metricgroups.json from python
architecture specific scripts. The metrics themselves will be added in
later patches.
If a build takes place in tools/perf/ then extra-metrics.json and
extra-metricgroups.json are generated in that directory and so added
to .gitignore. If there is an OUTPUT directory then the
tools/perf/pmu-events/arch files are copied to it so the generated
extra-metrics.json and extra-metricgroups.json can be added/generated
there.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/.gitignore | 2 +
tools/perf/Makefile.perf | 23 +++++++---
tools/perf/pmu-events/Build | 62 ++++++++++++++++++++++++--
tools/perf/pmu-events/amd_metrics.py | 38 ++++++++++++++++
tools/perf/pmu-events/arm64_metrics.py | 39 ++++++++++++++++
tools/perf/pmu-events/intel_metrics.py | 38 ++++++++++++++++
6 files changed, 193 insertions(+), 9 deletions(-)
create mode 100755 tools/perf/pmu-events/amd_metrics.py
create mode 100755 tools/perf/pmu-events/arm64_metrics.py
create mode 100755 tools/perf/pmu-events/intel_metrics.py
diff --git a/tools/perf/.gitignore b/tools/perf/.gitignore
index f5b81d439387..c9a8da5bfc56 100644
--- a/tools/perf/.gitignore
+++ b/tools/perf/.gitignore
@@ -39,6 +39,8 @@ trace/beauty/generated/
pmu-events/pmu-events.c
pmu-events/jevents
pmu-events/metric_test.log
+pmu-events/arch/**/extra-metrics.json
+pmu-events/arch/**/extra-metricgroups.json
tests/shell/*.shellcheck_log
tests/shell/coresight/*.shellcheck_log
tests/shell/lib/*.shellcheck_log
diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
index 9dd2e8d3f3c9..75b278497526 100644
--- a/tools/perf/Makefile.perf
+++ b/tools/perf/Makefile.perf
@@ -1265,9 +1265,26 @@ endif # CONFIG_PERF_BPF_SKEL
bpf-skel-clean:
$(call QUIET_CLEAN, bpf-skel) $(RM) -r $(SKEL_TMP_OUT) $(SKELETONS) $(SKEL_OUT)/vmlinux.h
+pmu-events-clean:
+ifeq ($(OUTPUT),)
+ $(call QUIET_CLEAN, pmu-events) $(RM) \
+ pmu-events/pmu-events.c \
+ pmu-events/metric_test.log \
+ pmu-events/test-empty-pmu-events.c \
+ pmu-events/empty-pmu-events.log
+ $(Q)find pmu-events/arch -name 'extra-metrics.json' -delete -o \
+ -name 'extra-metricgroups.json' -delete
+else
+ $(call QUIET_CLEAN, pmu-events) $(RM) -r $(OUTPUT)pmu-events/arch \
+ $(OUTPUT)pmu-events/pmu-events.c \
+ $(OUTPUT)pmu-events/metric_test.log \
+ $(OUTPUT)pmu-events/test-empty-pmu-events.c \
+ $(OUTPUT)pmu-events/empty-pmu-events.log
+endif
+
clean:: $(LIBAPI)-clean $(LIBBPF)-clean $(LIBSUBCMD)-clean $(LIBSYMBOL)-clean $(LIBPERF)-clean \
arm64-sysreg-defs-clean fixdep-clean python-clean bpf-skel-clean \
- tests-coresight-targets-clean
+ tests-coresight-targets-clean pmu-events-clean
$(call QUIET_CLEAN, core-objs) $(RM) $(LIBPERF_A) $(OUTPUT)perf-archive \
$(OUTPUT)perf-iostat $(LANG_BINDINGS)
$(Q)find $(or $(OUTPUT),.) -name '*.o' -delete -o -name '*.a' -delete -o \
@@ -1280,10 +1297,6 @@ clean:: $(LIBAPI)-clean $(LIBBPF)-clean $(LIBSUBCMD)-clean $(LIBSYMBOL)-clean $(
$(OUTPUT)FEATURE-DUMP $(OUTPUT)util/*-bison* $(OUTPUT)util/*-flex* \
$(OUTPUT)util/intel-pt-decoder/inat-tables.c \
$(OUTPUT)tests/llvm-src-{base,kbuild,prologue,relocation}.c \
- $(OUTPUT)pmu-events/pmu-events.c \
- $(OUTPUT)pmu-events/test-empty-pmu-events.c \
- $(OUTPUT)pmu-events/empty-pmu-events.log \
- $(OUTPUT)pmu-events/metric_test.log \
$(OUTPUT)$(fadvise_advice_array) \
$(OUTPUT)$(fsconfig_arrays) \
$(OUTPUT)$(fsmount_arrays) \
diff --git a/tools/perf/pmu-events/Build b/tools/perf/pmu-events/Build
index d941bc9d16e9..d89275c4f485 100644
--- a/tools/perf/pmu-events/Build
+++ b/tools/perf/pmu-events/Build
@@ -1,7 +1,6 @@
pmu-events-y += pmu-events.o
JDIR = pmu-events/arch/$(SRCARCH)
-JSON = $(shell [ -d $(JDIR) ] && \
- find $(JDIR) -name '*.json' -o -name 'mapfile.csv')
+JSON = $(shell find pmu-events/arch -name *.json -o -name *.csv)
JDIR_TEST = pmu-events/arch/test
JSON_TEST = $(shell [ -d $(JDIR_TEST) ] && \
find $(JDIR_TEST) -name '*.json')
@@ -29,6 +28,61 @@ $(PMU_EVENTS_C): $(EMPTY_PMU_EVENTS_C)
$(call rule_mkdir)
$(Q)$(call echo-cmd,gen)cp $< $@
else
+# Extract the model from a extra-metrics.json or extra-metricgroups.json path
+model_name = $(shell echo $(1)|sed -e 's@.\+/\(.*\)/extra-metric.*\.json@\1@')
+vendor_name = $(shell echo $(1)|sed -e 's@.\+/\(.*\)/[^/]*/extra-metric.*\.json@\1@')
+
+# Copy checked-in json for generation.
+$(OUTPUT)pmu-events/arch/%: pmu-events/arch/%
+ $(call rule_mkdir)
+ $(Q)$(call echo-cmd,gen)cp $< $@
+
+GEN_METRIC_DEPS := pmu-events/metric.py
+
+# Generate AMD Json
+ZENS = $(shell ls -d pmu-events/arch/x86/amdzen*)
+ZEN_METRICS = $(foreach x,$(ZENS),$(OUTPUT)$(x)/extra-metrics.json)
+ZEN_METRICGROUPS = $(foreach x,$(ZENS),$(OUTPUT)$(x)/extra-metricgroups.json)
+
+$(ZEN_METRICS): pmu-events/amd_metrics.py $(GEN_METRIC_DEPS)
+ $(call rule_mkdir)
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< $(call model_name,$@) arch > $@
+
+$(ZEN_METRICGROUPS): pmu-events/amd_metrics.py $(GEN_METRIC_DEPS)
+ $(call rule_mkdir)
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< -metricgroups $(call model_name,$@) arch > $@
+
+# Generate ARM Json
+ARMS = $(shell ls -d pmu-events/arch/arm64/arm/*)
+ARM_METRICS = $(foreach x,$(ARMS),$(OUTPUT)$(x)/extra-metrics.json)
+ARM_METRICGROUPS = $(foreach x,$(ARMS),$(OUTPUT)$(x)/extra-metricgroups.json)
+
+$(ARM_METRICS): pmu-events/arm64_metrics.py $(GEN_METRIC_DEPS)
+ $(call rule_mkdir)
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< $(call vendor_name,$@) $(call model_name,$@) arch > $@
+
+$(ARM_METRICGROUPS): pmu-events/arm64_metrics.py $(GEN_METRIC_DEPS)
+ $(call rule_mkdir)
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< -metricgroups $(call vendor_name,$@) $(call model_name,$@) arch > $@
+
+# Generate Intel Json
+INTELS = $(shell ls -d pmu-events/arch/x86/*|grep -v amdzen|grep -v mapfile.csv)
+INTEL_METRICS = $(foreach x,$(INTELS),$(OUTPUT)$(x)/extra-metrics.json)
+INTEL_METRICGROUPS = $(foreach x,$(INTELS),$(OUTPUT)$(x)/extra-metricgroups.json)
+
+$(INTEL_METRICS): pmu-events/intel_metrics.py $(GEN_METRIC_DEPS)
+ $(call rule_mkdir)
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< $(call model_name,$@) arch > $@
+
+$(INTEL_METRICGROUPS): pmu-events/intel_metrics.py $(GEN_METRIC_DEPS)
+ $(call rule_mkdir)
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< -metricgroups $(call model_name,$@) arch > $@
+
+GEN_JSON = $(patsubst %,$(OUTPUT)%,$(JSON)) \
+ $(ZEN_METRICS) $(ZEN_METRICGROUPS) \
+ $(ARM_METRICS) $(ARM_METRICGROUPS) \
+ $(INTEL_METRICS) $(INTEL_METRICGROUPS)
+
$(METRIC_TEST_LOG): $(METRIC_TEST_PY) $(METRIC_PY)
$(call rule_mkdir)
$(Q)$(call echo-cmd,test)$(PYTHON) $< 2> $@ || (cat $@ && false)
@@ -41,9 +95,9 @@ $(EMPTY_PMU_EVENTS_TEST_LOG): $(EMPTY_PMU_EVENTS_C) $(TEST_EMPTY_PMU_EVENTS_C)
$(call rule_mkdir)
$(Q)$(call echo-cmd,test)diff -u $^ 2> $@ || (cat $@ && false)
-$(PMU_EVENTS_C): $(JSON) $(JSON_TEST) $(JEVENTS_PY) $(METRIC_PY) $(METRIC_TEST_LOG) $(EMPTY_PMU_EVENTS_TEST_LOG)
+$(PMU_EVENTS_C): $(GEN_JSON) $(JSON_TEST) $(JEVENTS_PY) $(METRIC_PY) $(METRIC_TEST_LOG) $(EMPTY_PMU_EVENTS_TEST_LOG)
$(call rule_mkdir)
- $(Q)$(call echo-cmd,gen)$(PYTHON) $(JEVENTS_PY) $(JEVENTS_ARCH) $(JEVENTS_MODEL) pmu-events/arch $@
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $(JEVENTS_PY) $(JEVENTS_ARCH) $(JEVENTS_MODEL) $(OUTPUT)pmu-events/arch $@
endif
# pmu-events.c file is generated in the OUTPUT directory so it needs a
diff --git a/tools/perf/pmu-events/amd_metrics.py b/tools/perf/pmu-events/amd_metrics.py
new file mode 100755
index 000000000000..7ab2ee4fdb17
--- /dev/null
+++ b/tools/perf/pmu-events/amd_metrics.py
@@ -0,0 +1,38 @@
+#!/usr/bin/env python3
+# SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
+from metric import (JsonEncodeMetric, JsonEncodeMetricGroupDescriptions, MetricGroup)
+import argparse
+import json
+import os
+
+# Global command line arguments.
+_args = None
+
+def main() -> None:
+ global _args
+
+ def dir_path(path: str) -> str:
+ """Validate path is a directory for argparse."""
+ if os.path.isdir(path):
+ return path
+ raise argparse.ArgumentTypeError(f'\'{path}\' is not a valid directory')
+
+ parser = argparse.ArgumentParser(description="AMD perf json generator")
+ parser.add_argument("-metricgroups", help="Generate metricgroups data", action='store_true')
+ parser.add_argument("model", help="e.g. amdzen[123]")
+ parser.add_argument(
+ 'events_path',
+ type=dir_path,
+ help='Root of tree containing architecture directories containing json files'
+ )
+ _args = parser.parse_args()
+
+ all_metrics = MetricGroup("",[])
+
+ if _args.metricgroups:
+ print(JsonEncodeMetricGroupDescriptions(all_metrics))
+ else:
+ print(JsonEncodeMetric(all_metrics))
+
+if __name__ == '__main__':
+ main()
diff --git a/tools/perf/pmu-events/arm64_metrics.py b/tools/perf/pmu-events/arm64_metrics.py
new file mode 100755
index 000000000000..a9f0e6bc751b
--- /dev/null
+++ b/tools/perf/pmu-events/arm64_metrics.py
@@ -0,0 +1,39 @@
+#!/usr/bin/env python3
+# SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
+from metric import (JsonEncodeMetric, JsonEncodeMetricGroupDescriptions, MetricGroup)
+import argparse
+import json
+import os
+
+# Global command line arguments.
+_args = None
+
+def main() -> None:
+ global _args
+
+ def dir_path(path: str) -> str:
+ """Validate path is a directory for argparse."""
+ if os.path.isdir(path):
+ return path
+ raise argparse.ArgumentTypeError(f'\'{path}\' is not a valid directory')
+
+ parser = argparse.ArgumentParser(description="ARM perf json generator")
+ parser.add_argument("-metricgroups", help="Generate metricgroups data", action='store_true')
+ parser.add_argument("vendor", help="e.g. arm")
+ parser.add_argument("model", help="e.g. neoverse-n1")
+ parser.add_argument(
+ 'events_path',
+ type=dir_path,
+ help='Root of tree containing architecture directories containing json files'
+ )
+ _args = parser.parse_args()
+
+ all_metrics = MetricGroup("",[])
+
+ if _args.metricgroups:
+ print(JsonEncodeMetricGroupDescriptions(all_metrics))
+ else:
+ print(JsonEncodeMetric(all_metrics))
+
+if __name__ == '__main__':
+ main()
diff --git a/tools/perf/pmu-events/intel_metrics.py b/tools/perf/pmu-events/intel_metrics.py
new file mode 100755
index 000000000000..f004c27640d2
--- /dev/null
+++ b/tools/perf/pmu-events/intel_metrics.py
@@ -0,0 +1,38 @@
+#!/usr/bin/env python3
+# SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
+from metric import (JsonEncodeMetric, JsonEncodeMetricGroupDescriptions, MetricGroup)
+import argparse
+import json
+import os
+
+# Global command line arguments.
+_args = None
+
+def main() -> None:
+ global _args
+
+ def dir_path(path: str) -> str:
+ """Validate path is a directory for argparse."""
+ if os.path.isdir(path):
+ return path
+ raise argparse.ArgumentTypeError(f'\'{path}\' is not a valid directory')
+
+ parser = argparse.ArgumentParser(description="Intel perf json generator")
+ parser.add_argument("-metricgroups", help="Generate metricgroups data", action='store_true')
+ parser.add_argument("model", help="e.g. skylakex")
+ parser.add_argument(
+ 'events_path',
+ type=dir_path,
+ help='Root of tree containing architecture directories containing json files'
+ )
+ _args = parser.parse_args()
+
+ all_metrics = MetricGroup("",[])
+
+ if _args.metricgroups:
+ print(JsonEncodeMetricGroupDescriptions(all_metrics))
+ else:
+ print(JsonEncodeMetric(all_metrics))
+
+if __name__ == '__main__':
+ main()
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v4 12/12] perf jevents: Add load event json to verify and allow fallbacks
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
` (10 preceding siblings ...)
2024-09-26 17:35 ` [PATCH v4 11/12] perf jevents: Build support for generating metrics from python Ian Rogers
@ 2024-09-26 17:35 ` Ian Rogers
2024-10-11 4:32 ` kernel test robot
11 siblings, 1 reply; 14+ messages in thread
From: Ian Rogers @ 2024-09-26 17:35 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Namhyung Kim, Mark Rutland, Alexander Shishkin, Jiri Olsa,
Ian Rogers, Adrian Hunter, Kan Liang, John Garry, Jing Zhang,
Sandipan Das, Benjamin Gray, Xu Yang, linux-kernel,
linux-perf-users
Add a LoadEvents function that loads all event json files in a
directory. In the Event constructor ensure all events are defined in
the event json except for legacy events like "cycles". If the initial
event isn't found then legacy_event1 is used, and if that isn't found
legacy_event2 is used. This allows a single Event to have multiple
event names as models will often rename the same event over time. If
the event doesn't exist an exception is raised.
So that references to metrics can be added, add the MetricRef
class. This doesn't validate as an event name and so provides an
escape hatch for metrics to refer to each other.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/pmu-events/Build | 12 ++--
tools/perf/pmu-events/amd_metrics.py | 6 +-
tools/perf/pmu-events/arm64_metrics.py | 6 +-
tools/perf/pmu-events/intel_metrics.py | 6 +-
tools/perf/pmu-events/metric.py | 77 +++++++++++++++++++++++++-
5 files changed, 95 insertions(+), 12 deletions(-)
diff --git a/tools/perf/pmu-events/Build b/tools/perf/pmu-events/Build
index d89275c4f485..f3bc6c093360 100644
--- a/tools/perf/pmu-events/Build
+++ b/tools/perf/pmu-events/Build
@@ -46,11 +46,11 @@ ZEN_METRICGROUPS = $(foreach x,$(ZENS),$(OUTPUT)$(x)/extra-metricgroups.json)
$(ZEN_METRICS): pmu-events/amd_metrics.py $(GEN_METRIC_DEPS)
$(call rule_mkdir)
- $(Q)$(call echo-cmd,gen)$(PYTHON) $< $(call model_name,$@) arch > $@
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< $(call model_name,$@) pmu-events/arch > $@
$(ZEN_METRICGROUPS): pmu-events/amd_metrics.py $(GEN_METRIC_DEPS)
$(call rule_mkdir)
- $(Q)$(call echo-cmd,gen)$(PYTHON) $< -metricgroups $(call model_name,$@) arch > $@
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< -metricgroups $(call model_name,$@) pmu-events/arch > $@
# Generate ARM Json
ARMS = $(shell ls -d pmu-events/arch/arm64/arm/*)
@@ -59,11 +59,11 @@ ARM_METRICGROUPS = $(foreach x,$(ARMS),$(OUTPUT)$(x)/extra-metricgroups.json)
$(ARM_METRICS): pmu-events/arm64_metrics.py $(GEN_METRIC_DEPS)
$(call rule_mkdir)
- $(Q)$(call echo-cmd,gen)$(PYTHON) $< $(call vendor_name,$@) $(call model_name,$@) arch > $@
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< $(call vendor_name,$@) $(call model_name,$@) pmu-events/arch > $@
$(ARM_METRICGROUPS): pmu-events/arm64_metrics.py $(GEN_METRIC_DEPS)
$(call rule_mkdir)
- $(Q)$(call echo-cmd,gen)$(PYTHON) $< -metricgroups $(call vendor_name,$@) $(call model_name,$@) arch > $@
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< -metricgroups $(call vendor_name,$@) $(call model_name,$@) pmu-events/arch > $@
# Generate Intel Json
INTELS = $(shell ls -d pmu-events/arch/x86/*|grep -v amdzen|grep -v mapfile.csv)
@@ -72,11 +72,11 @@ INTEL_METRICGROUPS = $(foreach x,$(INTELS),$(OUTPUT)$(x)/extra-metricgroups.json
$(INTEL_METRICS): pmu-events/intel_metrics.py $(GEN_METRIC_DEPS)
$(call rule_mkdir)
- $(Q)$(call echo-cmd,gen)$(PYTHON) $< $(call model_name,$@) arch > $@
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< $(call model_name,$@) pmu-events/arch > $@
$(INTEL_METRICGROUPS): pmu-events/intel_metrics.py $(GEN_METRIC_DEPS)
$(call rule_mkdir)
- $(Q)$(call echo-cmd,gen)$(PYTHON) $< -metricgroups $(call model_name,$@) arch > $@
+ $(Q)$(call echo-cmd,gen)$(PYTHON) $< -metricgroups $(call model_name,$@) pmu-events/arch > $@
GEN_JSON = $(patsubst %,$(OUTPUT)%,$(JSON)) \
$(ZEN_METRICS) $(ZEN_METRICGROUPS) \
diff --git a/tools/perf/pmu-events/amd_metrics.py b/tools/perf/pmu-events/amd_metrics.py
index 7ab2ee4fdb17..4f728e7aae4a 100755
--- a/tools/perf/pmu-events/amd_metrics.py
+++ b/tools/perf/pmu-events/amd_metrics.py
@@ -1,6 +1,7 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
-from metric import (JsonEncodeMetric, JsonEncodeMetricGroupDescriptions, MetricGroup)
+from metric import (JsonEncodeMetric, JsonEncodeMetricGroupDescriptions, LoadEvents,
+ MetricGroup)
import argparse
import json
import os
@@ -27,6 +28,9 @@ def main() -> None:
)
_args = parser.parse_args()
+ directory = f"{_args.events_path}/x86/{_args.model}/"
+ LoadEvents(directory)
+
all_metrics = MetricGroup("",[])
if _args.metricgroups:
diff --git a/tools/perf/pmu-events/arm64_metrics.py b/tools/perf/pmu-events/arm64_metrics.py
index a9f0e6bc751b..c9aa2d827a82 100755
--- a/tools/perf/pmu-events/arm64_metrics.py
+++ b/tools/perf/pmu-events/arm64_metrics.py
@@ -1,6 +1,7 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
-from metric import (JsonEncodeMetric, JsonEncodeMetricGroupDescriptions, MetricGroup)
+from metric import (JsonEncodeMetric, JsonEncodeMetricGroupDescriptions, LoadEvents,
+ MetricGroup)
import argparse
import json
import os
@@ -30,6 +31,9 @@ def main() -> None:
all_metrics = MetricGroup("",[])
+ directory = f"{_args.events_path}/arm64/{_args.vendor}/{_args.model}/"
+ LoadEvents(directory)
+
if _args.metricgroups:
print(JsonEncodeMetricGroupDescriptions(all_metrics))
else:
diff --git a/tools/perf/pmu-events/intel_metrics.py b/tools/perf/pmu-events/intel_metrics.py
index f004c27640d2..04a19d05c6c1 100755
--- a/tools/perf/pmu-events/intel_metrics.py
+++ b/tools/perf/pmu-events/intel_metrics.py
@@ -1,6 +1,7 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
-from metric import (JsonEncodeMetric, JsonEncodeMetricGroupDescriptions, MetricGroup)
+from metric import (JsonEncodeMetric, JsonEncodeMetricGroupDescriptions, LoadEvents,
+ MetricGroup)
import argparse
import json
import os
@@ -27,6 +28,9 @@ def main() -> None:
)
_args = parser.parse_args()
+ directory = f"{_args.events_path}/x86/{_args.model}/"
+ LoadEvents(directory)
+
all_metrics = MetricGroup("",[])
if _args.metricgroups:
diff --git a/tools/perf/pmu-events/metric.py b/tools/perf/pmu-events/metric.py
index dd8fd06940e6..03312cd6d491 100644
--- a/tools/perf/pmu-events/metric.py
+++ b/tools/perf/pmu-events/metric.py
@@ -3,10 +3,50 @@
import ast
import decimal
import json
+import os
import re
from enum import Enum
from typing import Dict, List, Optional, Set, Tuple, Union
+all_events = set()
+
+def LoadEvents(directory: str) -> None:
+ """Populate a global set of all known events for the purpose of validating Event names"""
+ global all_events
+ all_events = {
+ "context\-switches",
+ "cycles",
+ "duration_time",
+ "instructions",
+ "l2_itlb_misses",
+ }
+ for file in os.listdir(os.fsencode(directory)):
+ filename = os.fsdecode(file)
+ if filename.endswith(".json"):
+ for x in json.load(open(f"{directory}/{filename}")):
+ if "EventName" in x:
+ all_events.add(x["EventName"])
+ elif "ArchStdEvent" in x:
+ all_events.add(x["ArchStdEvent"])
+
+
+def CheckEvent(name: str) -> bool:
+ """Check the event name exists in the set of all loaded events"""
+ global all_events
+ if len(all_events) == 0:
+ # No events loaded so assume any event is good.
+ return True
+
+ if ':' in name:
+ # Remove trailing modifier.
+ name = name[:name.find(':')]
+ elif '/' in name:
+ # Name could begin with a PMU or an event, for now assume it is good.
+ return True
+
+ return name in all_events
+
+
class MetricConstraint(Enum):
GROUPED_EVENTS = 0
NO_GROUP_EVENTS = 1
@@ -317,9 +357,18 @@ def _FixEscapes(s: str) -> str:
class Event(Expression):
"""An event in an expression."""
- def __init__(self, name: str, legacy_name: str = ''):
- self.name = _FixEscapes(name)
- self.legacy_name = _FixEscapes(legacy_name)
+ def __init__(self, *args: str):
+ error = ""
+ for name in args:
+ if CheckEvent(name):
+ self.name = _FixEscapes(name)
+ return
+ if error:
+ error += " or " + name
+ else:
+ error = name
+ global all_events
+ raise Exception(f"No event {error} in:\n{all_events}")
def ToPerfJson(self):
result = re.sub('/', '@', self.name)
@@ -338,6 +387,28 @@ class Event(Expression):
return self
+class MetricRef(Expression):
+ """A metric reference in an expression."""
+
+ def __init__(self, name: str):
+ self.name = _FixEscapes(name)
+
+ def ToPerfJson(self):
+ return self.name
+
+ def ToPython(self):
+ return f'MetricRef(r"{self.name}")'
+
+ def Simplify(self) -> Expression:
+ return self
+
+ def Equals(self, other: Expression) -> bool:
+ return isinstance(other, MetricRef) and self.name == other.name
+
+ def Substitute(self, name: str, expression: Expression) -> Expression:
+ return self
+
+
class Constant(Expression):
"""A constant within the expression tree."""
--
2.46.1.824.gd892dcdcdd-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH v4 12/12] perf jevents: Add load event json to verify and allow fallbacks
2024-09-26 17:35 ` [PATCH v4 12/12] perf jevents: Add load event json to verify and allow fallbacks Ian Rogers
@ 2024-10-11 4:32 ` kernel test robot
0 siblings, 0 replies; 14+ messages in thread
From: kernel test robot @ 2024-10-11 4:32 UTC (permalink / raw)
To: Ian Rogers
Cc: oe-lkp, lkp, linux-perf-users, linux-kernel, Peter Zijlstra,
Ingo Molnar, Arnaldo Carvalho de Melo, Namhyung Kim, Mark Rutland,
Alexander Shishkin, Jiri Olsa, Ian Rogers, Adrian Hunter,
Kan Liang, John Garry, Jing Zhang, Sandipan Das, Benjamin Gray,
Xu Yang, oliver.sang
[-- Attachment #1: Type: text/plain, Size: 5619 bytes --]
Hello,
kernel test robot noticed "perf-test.perf.make.fail" on:
commit: 1b58625961de2638d2d798db2f87b3ea0f3a53ed ("[PATCH v4 12/12] perf jevents: Add load event json to verify and allow fallbacks")
url: https://github.com/intel-lab-lkp/linux/commits/Ian-Rogers/perf-jevents-Allow-multiple-metricgroups-json-files/20240927-014027
base: https://git.kernel.org/cgit/linux/kernel/git/perf/perf-tools-next.git perf-tools-next
patch link: https://lore.kernel.org/all/20240926173554.404411-13-irogers@google.com/
patch subject: [PATCH v4 12/12] perf jevents: Add load event json to verify and allow fallbacks
in testcase: perf-test
version: perf-test-x86_64-679c985-1_20240823
with following parameters:
type: lkp
group: group-00
compiler: gcc-12
test machine: 224 threads 2 sockets Intel(R) Xeon(R) Platinum 8480+ (Sapphire Rapids) with 256G memory
(please refer to attached dmesg/kmsg for entire log/backtrace)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <oliver.sang@intel.com>
| Closes: https://lore.kernel.org/oe-lkp/202410111230.6218f561-oliver.sang@intel.com
The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20241011/202410111230.6218f561-oliver.sang@intel.com
(more build log is in attached output)
Traceback (most recent call last):
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 42, in <module>
main()
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 32, in main
LoadEvents(directory)
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/metric.py", line 26, in LoadEvents
for x in json.load(open(f"{directory}/{filename}")):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 293, in load
return loads(fp.read(),
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
...
Traceback (most recent call last):
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 42, in <module>
main()
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 32, in main
LoadEvents(directory)
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/metric.py", line 26, in LoadEvents
for x in json.load(open(f"{directory}/{filename}")):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 293, in load
return loads(fp.read(),
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
...
Traceback (most recent call last):
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 42, in <module>
main()
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 32, in main
LoadEvents(directory)
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/metric.py", line 26, in LoadEvents
for x in json.load(open(f"{directory}/{filename}")):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 293, in load
return loads(fp.read(),
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
make[3]: *** [pmu-events/Build:49: pmu-events/arch/x86/amdzen3/extra-metrics.json] Error 1
make[3]: *** Deleting file 'pmu-events/arch/x86/amdzen3/extra-metrics.json'
make[2]: *** [Makefile.perf:765: pmu-events/pmu-events-in.o] Error 2
make[2]: *** Waiting for unfinished jobs....
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
[-- Attachment #2: output --]
[-- Type: text/plain, Size: 147971 bytes --]
==> /tmp/stdout <==
==> /tmp/stderr <==
==> /tmp/stdout <==
RESULT_ROOT=/result/perf-test/group-00-lkp/lkp-spr-2sp1/debian-12-x86_64-20240206.cgz/x86_64-rhel-8.3-bpf/gcc-12/1b58625961de2638d2d798db2f87b3ea0f3a53ed/3
job=/lkp/jobs/scheduled/lkp-spr-2sp1/perf-test-group-00-lkp-debian-12-x86_64-20240206.cgz-1b58625961de-20241002-83947-l8seva-1.yaml
result_service: raw_upload, RESULT_MNT: /internal-lkp-server/result, RESULT_ROOT: /internal-lkp-server/result/perf-test/group-00-lkp/lkp-spr-2sp1/debian-12-x86_64-20240206.cgz/x86_64-rhel-8.3-bpf/gcc-12/1b58625961de2638d2d798db2f87b3ea0f3a53ed/3, TMP_RESULT_ROOT: /tmp/lkp/result
run-job /lkp/jobs/scheduled/lkp-spr-2sp1/perf-test-group-00-lkp-debian-12-x86_64-20240206.cgz-1b58625961de-20241002-83947-l8seva-1.yaml
/usr/bin/wget -q --timeout=3600 --tries=1 --local-encoding=UTF-8 http://internal-lkp-server:80/~lkp/cgi-bin/lkp-jobfile-append-var?job_file=/lkp/jobs/scheduled/lkp-spr-2sp1/perf-test-group-00-lkp-debian-12-x86_64-20240206.cgz-1b58625961de-20241002-83947-l8seva-1.yaml&job_state=running -O /dev/null
target ucode: 0x2b0004b1
LKP: stdout: 3334: current_version: 2b0004b1, target_version: 2b0004b1
check_nr_cpu
CPU(s): 224
On-line CPU(s) list: 0-223
Thread(s) per core: 2
Core(s) per socket: 56
Socket(s): 2
CPU(s) scaling MHz: 26%
NUMA node(s): 2
NUMA node0 CPU(s): 0-55,112-167
NUMA node1 CPU(s): 56-111,168-223
IPMI BMC is not supported on this machine, skip bmc-watchdog setup!
gcc march setting is sapphirerapids
valid
2024-10-02 01:02:46 make -j224 WERROR=0 ARCH= DEBUG=1 EXTRA_CFLAGS=-fno-omit-frame-pointer -fsanitize=undefined -fsanitize=address -C /usr/src/linux-perf-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf
make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf'
BUILD: Doing 'make ^[[33m-j224^[[m' parallel build
==> /tmp/stderr <==
diff -u tools/include/linux/coresight-pmu.h include/linux/coresight-pmu.h
diff -u tools/lib/list_sort.c lib/list_sort.c
==> /tmp/stdout <==
^[[0;33mWarning^[[0m: Kernel ABI header differences:
==> /tmp/stderr <==
Makefile.config:700: Warning: Disabled BPF skeletons as clang (clang) is missing
Makefile.config:991: No libllvm 13+ found, slower source file resolution, please install llvm-devel/llvm-dev
==> /tmp/stdout <==
Auto-detecting system features:
... dwarf: [ ^[[32mon^[[m ]
... dwarf_getlocations: [ ^[[32mon^[[m ]
... glibc: [ ^[[32mon^[[m ]
... libbfd: [ ^[[32mon^[[m ]
... libbfd-buildid: [ ^[[32mon^[[m ]
... libcap: [ ^[[32mon^[[m ]
... libelf: [ ^[[32mon^[[m ]
... libnuma: [ ^[[32mon^[[m ]
... numa_num_possible_cpus: [ ^[[32mon^[[m ]
... libperl: [ ^[[32mon^[[m ]
... libpython: [ ^[[32mon^[[m ]
... libcrypto: [ ^[[32mon^[[m ]
... libunwind: [ ^[[32mon^[[m ]
... libdw-dwarf-unwind: [ ^[[32mon^[[m ]
... libcapstone: [ ^[[32mon^[[m ]
... llvm-perf: [ ^[[31mOFF^[[m ]
... zlib: [ ^[[32mon^[[m ]
... lzma: [ ^[[32mon^[[m ]
... get_cpuid: [ ^[[32mon^[[m ]
... bpf: [ ^[[32mon^[[m ]
... libaio: [ ^[[32mon^[[m ]
... libzstd: [ ^[[32mon^[[m ]
GEN common-cmds.h
GEN /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/arch/arm64/include/generated/asm/sysreg-defs.h
CC jvmti/libjvmti.o
CC dlfilters/dlfilter-test-api-v0.o
CC jvmti/jvmti_agent.o
CC dlfilters/dlfilter-test-api-v2.o
CC dlfilters/dlfilter-show-cycles.o
CC jvmti/libstring.o
CC jvmti/libctype.o
==> /tmp/stderr <==
PERF_VERSION = 6.11.0-rc6
==> /tmp/stdout <==
GEN perf-archive
GEN perf-iostat
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/include/subcmd/exec-cmd.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/include/subcmd/help.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/include/subcmd/pager.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/include/subcmd/parse-options.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/include/subcmd/run-command.h
INSTALL libsubcmd_headers
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/perf/bpf_perf.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/perf/core.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/include/api/cpu.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/perf/cpumap.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/include/api/debug.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/perf/threadmap.h
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/core.o
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/perf/evlist.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsymbol/include/symbol/kallsyms.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/include/api/io.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/include/api/fd/array.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/perf/evsel.h
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/cpumap.o
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/include/api/fs/fs.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/perf/event.h
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/threadmap.o
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/perf/mmap.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/include/api/fs/tracing_path.h
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/cpu.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsymbol/kallsyms.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/evsel.o
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/internal/cpumap.h
MKDIR /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/fd/
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/debug.o
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/internal/evlist.h
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/str_error_r.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/evlist.o
MKDIR /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/fs/
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/internal/evsel.h
MKDIR /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/fs/
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/mmap.o
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/internal/lib.h
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/zalloc.o
MKDIR /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/fs/
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/xyarray.o
INSTALL libsymbol_headers
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/internal/mmap.h
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/fd/array.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/lib.o
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/internal/threadmap.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/internal/rc_check.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/include/internal/xyarray.h
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/fs/fs.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/fs/tracing_path.o
INSTALL libapi_headers
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/fs/cgroup.o
GEN /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/bpf_helper_defs.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/bpf.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/libbpf.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/btf.h
INSTALL libperf_headers
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/libbpf_common.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/libbpf_legacy.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/bpf_helpers.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/bpf_tracing.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/bpf_endian.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/bpf_core_read.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/skel_internal.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/libbpf_version.h
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/usdt.bpf.h
LINK dlfilters/dlfilter-show-cycles.so
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/exec-cmd.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/help.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/pager.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/parse-options.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/run-command.o
LINK dlfilters/dlfilter-test-api-v0.so
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/sigchain.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/subcmd-config.o
LINK dlfilters/dlfilter-test-api-v2.so
INSTALL /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/include/bpf/bpf_helper_defs.h
INSTALL libbpf_headers
LD /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/fd/libapi-in.o
LD /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsymbol/libsymbol-in.o
LD jvmti/jvmti-in.o
AR /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsymbol/libsymbol.a
LINK libperf-jvmti.so
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/libbpf.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/bpf.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/nlattr.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/btf.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/libbpf_errno.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/str_error.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/netlink.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/bpf_prog_linfo.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/libbpf_probes.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/hashmap.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/btf_dump.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/ringbuf.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/strset.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/linker.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/gen_loader.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/relo_core.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/usdt.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/zip.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/elf.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/features.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/btf_iter.o
CC /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/btf_relocate.o
LD /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/fs/libapi-in.o
LD /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/libapi-in.o
AR /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libapi/libapi.a
LD /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/libperf-in.o
AR /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libperf/libperf.a
LD /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/libsubcmd-in.o
AR /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libsubcmd/libsubcmd.a
LD /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/staticobjs/libbpf-in.o
LINK /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/libbpf/libbpf.a
CC builtin-bench.o
CC ui/setup.o
CC bench/sched-messaging.o
CC tests/builtin-test.o
CC bench/sched-pipe.o
CC ui/helpline.o
CC builtin-annotate.o
CC tests/tests-scripts.o
CC ui/progress.o
CC bench/sched-seccomp-notify.o
CC arch/common.o
CC builtin-check.o
CC tests/parse-events.o
CC ui/util.o
CC bench/syscall.o
CC builtin-config.o
CC tests/dso-data.o
CC ui/hist.o
CC tests/attr.o
CC builtin-diff.o
CC bench/mem-functions.o
CC tests/vmlinux-kallsyms.o
CC ui/stdio/hist.o
CC builtin-evlist.o
CC tests/openat-syscall.o
CC bench/futex-hash.o
CC ui/browser.o
CC builtin-ftrace.o
CC tests/openat-syscall-all-cpus.o
CC scripts/python/Perf-Trace-Util/Context.o
CC bench/futex-wake.o
CC arch/x86/tests/regs_load.o
CC builtin-help.o
CC scripts/perl/Perf-Trace-Util/Context.o
CC arch/x86/tests/dwarf-unwind.o
CC builtin-buildid-list.o
CC bench/futex-wake-parallel.o
CC tests/openat-syscall-tp-fields.o
CC arch/x86/tests/arch-tests.o
CC arch/x86/tests/sample-parsing.o
CC builtin-buildid-cache.o
CC bench/futex-requeue.o
CC tests/mmap-basic.o
CC arch/x86/tests/hybrid.o
CC builtin-kallsyms.o
CC tests/perf-record.o
CC bench/futex-lock-pi.o
CC bench/epoll-wait.o
CC builtin-list.o
CC tests/evsel-roundtrip-name.o
CC arch/x86/tests/intel-pt-test.o
CC arch/x86/util/header.o
CC arch/x86/tests/bp-modify.o
CC builtin-record.o
CC ui/browsers/annotate.o
CC tests/evsel-tp-sched.o
CC bench/epoll-ctl.o
CC arch/x86/util/tsc.o
CC ui/tui/setup.o
CC tests/fdarray.o
CC bench/synthesize.o
CC arch/x86/tests/amd-ibs-via-core-pmu.o
CC builtin-report.o
CC arch/x86/util/pmu.o
CC ui/tui/util.o
CC ui/browsers/annotate-data.o
CC ui/browsers/map.o
CC tests/pmu-events.o
CC ui/browsers/hists.o
CC bench/kallsyms-parse.o
CC arch/x86/util/kvm-stat.o
CC ui/tui/progress.o
CC tests/pmu.o
CC ui/tui/helpline.o
CC builtin-stat.o
CC bench/find-bit-bench.o
CC builtin-top.o
CC tests/hists_common.o
CC arch/x86/util/perf_regs.o
CC ui/browsers/scripts.o
CC tests/hists_link.o
CC arch/x86/util/topdown.o
CC bench/inject-buildid.o
CC arch/x86/util/machine.o
CC bench/evlist-open-close.o
CC bench/breakpoint.o
CC tests/hists_output.o
CC tests/hists_filter.o
CC ui/browsers/header.o
CC builtin-script.o
CC ui/browsers/res_sample.o
CC builtin-kvm.o
CC arch/x86/util/evlist.o
CC tests/hists_cumulate.o
CC arch/x86/util/event.o
CC bench/pmu-scan.o
CC builtin-inject.o
CC tests/python-use.o
CC arch/x86/util/mem-events.o
CC bench/uprobe.o
CC tests/bp_signal.o
CC arch/x86/util/evsel.o
CC bench/mem-memcpy-x86-64-asm.o
CC builtin-mem.o
CC bench/mem-memset-x86-64-asm.o
CC tests/bp_signal_overflow.o
CC builtin-data.o
CC bench/numa.o
CC arch/x86/util/iostat.o
CC tests/wp.o
CC builtin-version.o
CC tests/bp_account.o
CC arch/x86/util/dwarf-regs.o
CC arch/x86/util/env.o
CC arch/x86/util/unwind-libunwind.o
CC builtin-c2c.o
CC builtin-daemon.o
CC tests/sw-clock.o
CC tests/task-exit.o
CC tests/mmap-thread-lookup.o
CC arch/x86/util/archinsn.o
CC builtin-kmem.o
CC arch/x86/util/intel-pt.o
CC arch/x86/util/auxtrace.o
CC tests/thread-maps-share.o
CC builtin-kwork.o
CC arch/x86/util/intel-bts.o
CC tests/keep-tracking.o
CC builtin-lock.o
CC tests/switch-tracking.o
CC tests/code-reading.o
CC builtin-timechart.o
CC builtin-sched.o
CC tests/parse-no-sample-id-all.o
CC tests/sample-parsing.o
CC tests/kmod-path.o
CC tests/thread-map.o
CC tests/mem.o
CC builtin-trace.o
CC builtin-probe.o
CC tests/topology.o
CC tests/cpumap.o
CC perf.o
CC tests/stat.o
CC tests/event_update.o
CC tests/event-times.o
LD arch/perf-in.o
CC tests/expr.o
CC tests/backward-ring-buffer.o
CC trace/beauty/clone.o
CC tests/sdt.o
CC trace/beauty/fcntl.o
CC trace/beauty/flock.o
CC tests/is_printable_array.o
CC tests/bitmap.o
CC trace/beauty/fs_at_flags.o
CC tests/perf-hooks.o
CC trace/beauty/fsmount.o
CC trace/beauty/fspick.o
CC tests/unit_number__scnprintf.o
CC trace/beauty/ioctl.o
CC tests/mem2node.o
CC trace/beauty/kcmp.o
CC tests/maps.o
CC tests/time-utils-test.o
CC trace/beauty/mount_flags.o
CC tests/genelf.o
CC trace/beauty/move_mount.o
CC tests/api-io.o
CC tests/demangle-java-test.o
CC trace/beauty/pkey_alloc.o
CC trace/beauty/arch_prctl.o
CC tests/demangle-ocaml-test.o
CC tests/pfm.o
CC trace/beauty/prctl.o
CC trace/beauty/renameat.o
CC trace/beauty/sockaddr.o
CC tests/parse-metric.o
CC tests/expand-cgroup.o
CC tests/pe-file-parsing.o
CC tests/sigtrap.o
CC trace/beauty/statx.o
CC trace/beauty/socket.o
CC tests/perf-time-to-tsc.o
CC tests/dlfilter-test.o
CC trace/beauty/sync_file_range.o
CC trace/beauty/timespec.o
CC tests/event_groups.o
CC tests/symbols.o
CC tests/util.o
CC tests/dwarf-unwind.o
CC trace/beauty/tracepoints/x86_irq_vectors.o
CC trace/beauty/tracepoints/x86_msr.o
CC tests/workloads/noploop.o
CC tests/workloads/thloop.o
CC tests/workloads/leafloop.o
CC tests/workloads/sqrtloop.o
CC tests/workloads/brstack.o
CC tests/workloads/datasym.o
CC tests/workloads/landlock.o
CC util/arm64-frame-pointer-unwind-support.o
CC util/addr_location.o
CC util/annotate.o
CC util/block-info.o
CC util/block-range.o
CC util/build-id.o
CC util/cacheline.o
CC util/config.o
CC util/copyfile.o
CC util/ctype.o
CC util/db-export.o
CC util/disasm.o
CC util/disasm_bpf.o
CC util/env.o
CC util/event.o
CC util/evlist.o
CC util/sideband_evlist.o
CC util/evsel.o
CC util/evsel_fprintf.o
CC util/perf_event_attr_fprintf.o
CC util/evswitch.o
CC util/find_bit.o
CC util/get_current_dir_name.o
CC util/levenshtein.o
CC util/mmap.o
CC util/memswap.o
BISON util/parse-events-bison.c
CC util/print-events.o
CC util/tracepoint.o
CC util/perf_regs.o
CC util/intel-pt-decoder/intel-pt-pkt-decoder.o
CC util/perf-regs-arch/perf_regs_aarch64.o
==> /tmp/stderr <==
make[3]: Circular pmu-events/arch/test/arch-std-events.json <- pmu-events/arch/test/arch-std-events.json dependency dropped.
make[3]: Circular pmu-events/arch/test/test_soc/sys/uncore.json <- pmu-events/arch/test/test_soc/sys/uncore.json dependency dropped.
make[3]: Circular pmu-events/arch/test/test_soc/cpu/metrics.json <- pmu-events/arch/test/test_soc/cpu/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/test/test_soc/cpu/uncore.json <- pmu-events/arch/test/test_soc/cpu/uncore.json dependency dropped.
make[3]: Circular pmu-events/arch/test/test_soc/cpu/branch.json <- pmu-events/arch/test/test_soc/cpu/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/test/test_soc/cpu/cache.json <- pmu-events/arch/test/test_soc/cpu/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/test/test_soc/cpu/other.json <- pmu-events/arch/test/test_soc/cpu/other.json dependency dropped.
make[3]: Circular pmu-events/arch/nds32/n13/atcpmu.json <- pmu-events/arch/nds32/n13/atcpmu.json dependency dropped.
make[3]: Circular pmu-events/arch/nds32/mapfile.csv <- pmu-events/arch/nds32/mapfile.csv dependency dropped.
make[3]: Circular pmu-events/arch/riscv/thead/c900-legacy/firmware.json <- pmu-events/arch/riscv/thead/c900-legacy/firmware.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/thead/c900-legacy/microarch.json <- pmu-events/arch/riscv/thead/c900-legacy/microarch.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/thead/c900-legacy/cache.json <- pmu-events/arch/riscv/thead/c900-legacy/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/thead/c900-legacy/instruction.json <- pmu-events/arch/riscv/thead/c900-legacy/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/sifive/u74/firmware.json <- pmu-events/arch/riscv/sifive/u74/firmware.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/sifive/u74/memory.json <- pmu-events/arch/riscv/sifive/u74/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/sifive/u74/microarch.json <- pmu-events/arch/riscv/sifive/u74/microarch.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/sifive/u74/instructions.json <- pmu-events/arch/riscv/sifive/u74/instructions.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/andes/ax45/firmware.json <- pmu-events/arch/riscv/andes/ax45/firmware.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/andes/ax45/memory.json <- pmu-events/arch/riscv/andes/ax45/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/andes/ax45/microarch.json <- pmu-events/arch/riscv/andes/ax45/microarch.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/andes/ax45/instructions.json <- pmu-events/arch/riscv/andes/ax45/instructions.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/mapfile.csv <- pmu-events/arch/riscv/mapfile.csv dependency dropped.
make[3]: Circular pmu-events/arch/riscv/starfive/dubhe-80/firmware.json <- pmu-events/arch/riscv/starfive/dubhe-80/firmware.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/starfive/dubhe-80/common.json <- pmu-events/arch/riscv/starfive/dubhe-80/common.json dependency dropped.
make[3]: Circular pmu-events/arch/riscv/riscv-sbi-firmware.json <- pmu-events/arch/riscv/riscv-sbi-firmware.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx93/sys/metrics.json <- pmu-events/arch/arm64/freescale/imx93/sys/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx93/sys/ddrc.json <- pmu-events/arch/arm64/freescale/imx93/sys/ddrc.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx8mq/sys/metrics.json <- pmu-events/arch/arm64/freescale/imx8mq/sys/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx8mq/sys/ddrc.json <- pmu-events/arch/arm64/freescale/imx8mq/sys/ddrc.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx8mn/sys/metrics.json <- pmu-events/arch/arm64/freescale/imx8mn/sys/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx8mn/sys/ddrc.json <- pmu-events/arch/arm64/freescale/imx8mn/sys/ddrc.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx8mp/sys/metrics.json <- pmu-events/arch/arm64/freescale/imx8mp/sys/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx8mp/sys/ddrc.json <- pmu-events/arch/arm64/freescale/imx8mp/sys/ddrc.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx95/sys/metrics.json <- pmu-events/arch/arm64/freescale/imx95/sys/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx95/sys/ddrc.json <- pmu-events/arch/arm64/freescale/imx95/sys/ddrc.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx8mm/sys/metrics.json <- pmu-events/arch/arm64/freescale/imx8mm/sys/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/freescale/imx8mm/sys/ddrc.json <- pmu-events/arch/arm64/freescale/imx8mm/sys/ddrc.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/cavium/thunderx2/core-imp-def.json <- pmu-events/arch/arm64/cavium/thunderx2/core-imp-def.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/thead/yitian710/sys/metrics.json <- pmu-events/arch/arm64/thead/yitian710/sys/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/thead/yitian710/sys/ali_drw.json <- pmu-events/arch/arm64/thead/yitian710/sys/ali_drw.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/hisilicon/hip09/sys/uncore-cpa.json <- pmu-events/arch/arm64/hisilicon/hip09/sys/uncore-cpa.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/hisilicon/hip08/metrics.json <- pmu-events/arch/arm64/hisilicon/hip08/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/hisilicon/hip08/uncore-ddrc.json <- pmu-events/arch/arm64/hisilicon/hip08/uncore-ddrc.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/hisilicon/hip08/uncore-l3c.json <- pmu-events/arch/arm64/hisilicon/hip08/uncore-l3c.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/hisilicon/hip08/core-imp-def.json <- pmu-events/arch/arm64/hisilicon/hip08/core-imp-def.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/hisilicon/hip08/uncore-hha.json <- pmu-events/arch/arm64/hisilicon/hip08/uncore-hha.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/fujitsu/a64fx/sve.json <- pmu-events/arch/arm64/fujitsu/a64fx/sve.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/fujitsu/a64fx/memory.json <- pmu-events/arch/arm64/fujitsu/a64fx/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/fujitsu/a64fx/cycle.json <- pmu-events/arch/arm64/fujitsu/a64fx/cycle.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/fujitsu/a64fx/branch.json <- pmu-events/arch/arm64/fujitsu/a64fx/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/fujitsu/a64fx/cache.json <- pmu-events/arch/arm64/fujitsu/a64fx/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/fujitsu/a64fx/exception.json <- pmu-events/arch/arm64/fujitsu/a64fx/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/fujitsu/a64fx/other.json <- pmu-events/arch/arm64/fujitsu/a64fx/other.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/fujitsu/a64fx/bus.json <- pmu-events/arch/arm64/fujitsu/a64fx/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/fujitsu/a64fx/pipeline.json <- pmu-events/arch/arm64/fujitsu/a64fx/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/fujitsu/a64fx/instruction.json <- pmu-events/arch/arm64/fujitsu/a64fx/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/common-and-microarch.json <- pmu-events/arch/arm64/common-and-microarch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a78/memory.json <- pmu-events/arch/arm64/arm/cortex-a78/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a78/branch.json <- pmu-events/arch/arm64/arm/cortex-a78/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a78/cache.json <- pmu-events/arch/arm64/arm/cortex-a78/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a78/exception.json <- pmu-events/arch/arm64/arm/cortex-a78/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a78/bus.json <- pmu-events/arch/arm64/arm/cortex-a78/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a78/pipeline.json <- pmu-events/arch/arm64/arm/cortex-a78/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a78/instruction.json <- pmu-events/arch/arm64/arm/cortex-a78/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cmn/sys/metric.json <- pmu-events/arch/arm64/arm/cmn/sys/metric.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cmn/sys/cmn.json <- pmu-events/arch/arm64/arm/cmn/sys/cmn.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a710/trace.json <- pmu-events/arch/arm64/arm/cortex-a710/trace.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a710/memory.json <- pmu-events/arch/arm64/arm/cortex-a710/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a710/branch.json <- pmu-events/arch/arm64/arm/cortex-a710/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a710/cache.json <- pmu-events/arch/arm64/arm/cortex-a710/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a710/exception.json <- pmu-events/arch/arm64/arm/cortex-a710/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a710/bus.json <- pmu-events/arch/arm64/arm/cortex-a710/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a710/pipeline.json <- pmu-events/arch/arm64/arm/cortex-a710/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a710/instruction.json <- pmu-events/arch/arm64/arm/cortex-a710/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a510/pmu.json <- pmu-events/arch/arm64/arm/cortex-a510/pmu.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a510/trace.json <- pmu-events/arch/arm64/arm/cortex-a510/trace.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a510/memory.json <- pmu-events/arch/arm64/arm/cortex-a510/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a510/branch.json <- pmu-events/arch/arm64/arm/cortex-a510/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a510/cache.json <- pmu-events/arch/arm64/arm/cortex-a510/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a510/exception.json <- pmu-events/arch/arm64/arm/cortex-a510/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a510/bus.json <- pmu-events/arch/arm64/arm/cortex-a510/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a510/pipeline.json <- pmu-events/arch/arm64/arm/cortex-a510/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a510/instruction.json <- pmu-events/arch/arm64/arm/cortex-a510/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x2/trace.json <- pmu-events/arch/arm64/arm/cortex-x2/trace.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x2/memory.json <- pmu-events/arch/arm64/arm/cortex-x2/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x2/branch.json <- pmu-events/arch/arm64/arm/cortex-x2/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x2/cache.json <- pmu-events/arch/arm64/arm/cortex-x2/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x2/exception.json <- pmu-events/arch/arm64/arm/cortex-x2/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x2/bus.json <- pmu-events/arch/arm64/arm/cortex-x2/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x2/pipeline.json <- pmu-events/arch/arm64/arm/cortex-x2/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x2/instruction.json <- pmu-events/arch/arm64/arm/cortex-x2/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/metrics.json <- pmu-events/arch/arm64/arm/neoverse-v1/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/general.json <- pmu-events/arch/arm64/arm/neoverse-v1/general.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/sve.json <- pmu-events/arch/arm64/arm/neoverse-v1/sve.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/l1i_cache.json <- pmu-events/arch/arm64/arm/neoverse-v1/l1i_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/fp_operation.json <- pmu-events/arch/arm64/arm/neoverse-v1/fp_operation.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/spe.json <- pmu-events/arch/arm64/arm/neoverse-v1/spe.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/spec_operation.json <- pmu-events/arch/arm64/arm/neoverse-v1/spec_operation.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/memory.json <- pmu-events/arch/arm64/arm/neoverse-v1/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/l3_cache.json <- pmu-events/arch/arm64/arm/neoverse-v1/l3_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/stall.json <- pmu-events/arch/arm64/arm/neoverse-v1/stall.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/exception.json <- pmu-events/arch/arm64/arm/neoverse-v1/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/ll_cache.json <- pmu-events/arch/arm64/arm/neoverse-v1/ll_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/l2_cache.json <- pmu-events/arch/arm64/arm/neoverse-v1/l2_cache.json dependency dropped.
==> /tmp/stdout <==
GEN util/intel-pt-decoder/inat-tables.c
==> /tmp/stderr <==
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/bus.json <- pmu-events/arch/arm64/arm/neoverse-v1/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/l1d_cache.json <- pmu-events/arch/arm64/arm/neoverse-v1/l1d_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/retired.json <- pmu-events/arch/arm64/arm/neoverse-v1/retired.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-v1/tlb.json <- pmu-events/arch/arm64/arm/neoverse-v1/tlb.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/metrics.json <- pmu-events/arch/arm64/arm/neoverse-n1/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/general.json <- pmu-events/arch/arm64/arm/neoverse-n1/general.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/l1i_cache.json <- pmu-events/arch/arm64/arm/neoverse-n1/l1i_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/spe.json <- pmu-events/arch/arm64/arm/neoverse-n1/spe.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/spec_operation.json <- pmu-events/arch/arm64/arm/neoverse-n1/spec_operation.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/memory.json <- pmu-events/arch/arm64/arm/neoverse-n1/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/l3_cache.json <- pmu-events/arch/arm64/arm/neoverse-n1/l3_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/stall.json <- pmu-events/arch/arm64/arm/neoverse-n1/stall.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/exception.json <- pmu-events/arch/arm64/arm/neoverse-n1/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/ll_cache.json <- pmu-events/arch/arm64/arm/neoverse-n1/ll_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/l2_cache.json <- pmu-events/arch/arm64/arm/neoverse-n1/l2_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/bus.json <- pmu-events/arch/arm64/arm/neoverse-n1/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/l1d_cache.json <- pmu-events/arch/arm64/arm/neoverse-n1/l1d_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/retired.json <- pmu-events/arch/arm64/arm/neoverse-n1/retired.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n1/tlb.json <- pmu-events/arch/arm64/arm/neoverse-n1/tlb.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a35/memory.json <- pmu-events/arch/arm64/arm/cortex-a35/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a35/branch.json <- pmu-events/arch/arm64/arm/cortex-a35/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a35/cache.json <- pmu-events/arch/arm64/arm/cortex-a35/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a35/exception.json <- pmu-events/arch/arm64/arm/cortex-a35/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a35/bus.json <- pmu-events/arch/arm64/arm/cortex-a35/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a35/instruction.json <- pmu-events/arch/arm64/arm/cortex-a35/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a55/memory.json <- pmu-events/arch/arm64/arm/cortex-a55/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a55/branch.json <- pmu-events/arch/arm64/arm/cortex-a55/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a55/cache.json <- pmu-events/arch/arm64/arm/cortex-a55/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a55/exception.json <- pmu-events/arch/arm64/arm/cortex-a55/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a55/bus.json <- pmu-events/arch/arm64/arm/cortex-a55/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a55/pipeline.json <- pmu-events/arch/arm64/arm/cortex-a55/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a55/instruction.json <- pmu-events/arch/arm64/arm/cortex-a55/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a34/memory.json <- pmu-events/arch/arm64/arm/cortex-a34/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a34/branch.json <- pmu-events/arch/arm64/arm/cortex-a34/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a34/cache.json <- pmu-events/arch/arm64/arm/cortex-a34/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a34/exception.json <- pmu-events/arch/arm64/arm/cortex-a34/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a34/bus.json <- pmu-events/arch/arm64/arm/cortex-a34/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a34/instruction.json <- pmu-events/arch/arm64/arm/cortex-a34/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a75/mmu.json <- pmu-events/arch/arm64/arm/cortex-a75/mmu.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a75/memory.json <- pmu-events/arch/arm64/arm/cortex-a75/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a75/etm.json <- pmu-events/arch/arm64/arm/cortex-a75/etm.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a75/branch.json <- pmu-events/arch/arm64/arm/cortex-a75/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a75/cache.json <- pmu-events/arch/arm64/arm/cortex-a75/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a75/exception.json <- pmu-events/arch/arm64/arm/cortex-a75/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a75/bus.json <- pmu-events/arch/arm64/arm/cortex-a75/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a75/pipeline.json <- pmu-events/arch/arm64/arm/cortex-a75/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a75/instruction.json <- pmu-events/arch/arm64/arm/cortex-a75/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a57-a72/memory.json <- pmu-events/arch/arm64/arm/cortex-a57-a72/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a57-a72/branch.json <- pmu-events/arch/arm64/arm/cortex-a57-a72/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a57-a72/cache.json <- pmu-events/arch/arm64/arm/cortex-a57-a72/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a57-a72/exception.json <- pmu-events/arch/arm64/arm/cortex-a57-a72/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a57-a72/bus.json <- pmu-events/arch/arm64/arm/cortex-a57-a72/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a57-a72/instruction.json <- pmu-events/arch/arm64/arm/cortex-a57-a72/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a73/mmu.json <- pmu-events/arch/arm64/arm/cortex-a73/mmu.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a73/memory.json <- pmu-events/arch/arm64/arm/cortex-a73/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a73/etm.json <- pmu-events/arch/arm64/arm/cortex-a73/etm.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a73/branch.json <- pmu-events/arch/arm64/arm/cortex-a73/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a73/cache.json <- pmu-events/arch/arm64/arm/cortex-a73/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a73/exception.json <- pmu-events/arch/arm64/arm/cortex-a73/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a73/bus.json <- pmu-events/arch/arm64/arm/cortex-a73/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a73/pipeline.json <- pmu-events/arch/arm64/arm/cortex-a73/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a73/instruction.json <- pmu-events/arch/arm64/arm/cortex-a73/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a53/memory.json <- pmu-events/arch/arm64/arm/cortex-a53/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a53/branch.json <- pmu-events/arch/arm64/arm/cortex-a53/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a53/cache.json <- pmu-events/arch/arm64/arm/cortex-a53/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a53/other.json <- pmu-events/arch/arm64/arm/cortex-a53/other.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a53/bus.json <- pmu-events/arch/arm64/arm/cortex-a53/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a53/pipeline.json <- pmu-events/arch/arm64/arm/cortex-a53/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x1/memory.json <- pmu-events/arch/arm64/arm/cortex-x1/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x1/branch.json <- pmu-events/arch/arm64/arm/cortex-x1/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x1/cache.json <- pmu-events/arch/arm64/arm/cortex-x1/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x1/exception.json <- pmu-events/arch/arm64/arm/cortex-x1/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x1/bus.json <- pmu-events/arch/arm64/arm/cortex-x1/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x1/pipeline.json <- pmu-events/arch/arm64/arm/cortex-x1/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-x1/instruction.json <- pmu-events/arch/arm64/arm/cortex-x1/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a77/memory.json <- pmu-events/arch/arm64/arm/cortex-a77/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a77/branch.json <- pmu-events/arch/arm64/arm/cortex-a77/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a77/cache.json <- pmu-events/arch/arm64/arm/cortex-a77/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a77/exception.json <- pmu-events/arch/arm64/arm/cortex-a77/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a77/bus.json <- pmu-events/arch/arm64/arm/cortex-a77/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a77/pipeline.json <- pmu-events/arch/arm64/arm/cortex-a77/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a77/instruction.json <- pmu-events/arch/arm64/arm/cortex-a77/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/metrics.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/general.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/general.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/trace.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/trace.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/sve.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/sve.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/l1i_cache.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/l1i_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/fp_operation.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/fp_operation.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/spe.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/spe.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/spec_operation.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/spec_operation.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/memory.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/l3_cache.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/l3_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/stall.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/stall.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/exception.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/ll_cache.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/ll_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/l2_cache.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/l2_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/bus.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/l1d_cache.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/l1d_cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/retired.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/retired.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/neoverse-n2-v2/tlb.json <- pmu-events/arch/arm64/arm/neoverse-n2-v2/tlb.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a76/memory.json <- pmu-events/arch/arm64/arm/cortex-a76/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a76/branch.json <- pmu-events/arch/arm64/arm/cortex-a76/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a76/cache.json <- pmu-events/arch/arm64/arm/cortex-a76/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a76/exception.json <- pmu-events/arch/arm64/arm/cortex-a76/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a76/bus.json <- pmu-events/arch/arm64/arm/cortex-a76/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a76/pipeline.json <- pmu-events/arch/arm64/arm/cortex-a76/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a76/instruction.json <- pmu-events/arch/arm64/arm/cortex-a76/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a65-e1/ifu.json <- pmu-events/arch/arm64/arm/cortex-a65-e1/ifu.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a65-e1/memory.json <- pmu-events/arch/arm64/arm/cortex-a65-e1/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a65-e1/branch.json <- pmu-events/arch/arm64/arm/cortex-a65-e1/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a65-e1/dpu.json <- pmu-events/arch/arm64/arm/cortex-a65-e1/dpu.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a65-e1/cache.json <- pmu-events/arch/arm64/arm/cortex-a65-e1/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a65-e1/exception.json <- pmu-events/arch/arm64/arm/cortex-a65-e1/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a65-e1/bus.json <- pmu-events/arch/arm64/arm/cortex-a65-e1/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a65-e1/pipeline.json <- pmu-events/arch/arm64/arm/cortex-a65-e1/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/arm/cortex-a65-e1/instruction.json <- pmu-events/arch/arm64/arm/cortex-a65-e1/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/recommended.json <- pmu-events/arch/arm64/recommended.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/mapfile.csv <- pmu-events/arch/arm64/mapfile.csv dependency dropped.
make[3]: Circular pmu-events/arch/arm64/sbsa.json <- pmu-events/arch/arm64/sbsa.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/metrics.json <- pmu-events/arch/arm64/ampere/ampereone/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/intrinsic.json <- pmu-events/arch/arm64/ampere/ampereone/intrinsic.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/spe.json <- pmu-events/arch/arm64/ampere/ampereone/spe.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/memory.json <- pmu-events/arch/arm64/ampere/ampereone/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/branch.json <- pmu-events/arch/arm64/ampere/ampereone/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/core-imp-def.json <- pmu-events/arch/arm64/ampere/ampereone/core-imp-def.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/cache.json <- pmu-events/arch/arm64/ampere/ampereone/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/exception.json <- pmu-events/arch/arm64/ampere/ampereone/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/bus.json <- pmu-events/arch/arm64/ampere/ampereone/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/pipeline.json <- pmu-events/arch/arm64/ampere/ampereone/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereone/instruction.json <- pmu-events/arch/arm64/ampere/ampereone/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/metrics.json <- pmu-events/arch/arm64/ampere/ampereonex/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/mmu.json <- pmu-events/arch/arm64/ampere/ampereonex/mmu.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/intrinsic.json <- pmu-events/arch/arm64/ampere/ampereonex/intrinsic.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/spe.json <- pmu-events/arch/arm64/ampere/ampereonex/spe.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/memory.json <- pmu-events/arch/arm64/ampere/ampereonex/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/branch.json <- pmu-events/arch/arm64/ampere/ampereonex/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/core-imp-def.json <- pmu-events/arch/arm64/ampere/ampereonex/core-imp-def.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/cache.json <- pmu-events/arch/arm64/ampere/ampereonex/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/exception.json <- pmu-events/arch/arm64/ampere/ampereonex/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/bus.json <- pmu-events/arch/arm64/ampere/ampereonex/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/pipeline.json <- pmu-events/arch/arm64/ampere/ampereonex/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/ampereonex/instruction.json <- pmu-events/arch/arm64/ampere/ampereonex/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/emag/clock.json <- pmu-events/arch/arm64/ampere/emag/clock.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/emag/intrinsic.json <- pmu-events/arch/arm64/ampere/emag/intrinsic.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/emag/memory.json <- pmu-events/arch/arm64/ampere/emag/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/emag/branch.json <- pmu-events/arch/arm64/ampere/emag/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/emag/cache.json <- pmu-events/arch/arm64/ampere/emag/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/emag/exception.json <- pmu-events/arch/arm64/ampere/emag/exception.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/emag/bus.json <- pmu-events/arch/arm64/ampere/emag/bus.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/emag/pipeline.json <- pmu-events/arch/arm64/ampere/emag/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/arm64/ampere/emag/instruction.json <- pmu-events/arch/arm64/ampere/emag/instruction.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z196/basic.json <- pmu-events/arch/s390/cf_z196/basic.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z196/extended.json <- pmu-events/arch/s390/cf_z196/extended.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z196/crypto.json <- pmu-events/arch/s390/cf_z196/crypto.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_zec12/basic.json <- pmu-events/arch/s390/cf_zec12/basic.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_zec12/extended.json <- pmu-events/arch/s390/cf_zec12/extended.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_zec12/crypto.json <- pmu-events/arch/s390/cf_zec12/crypto.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_zec12/transaction.json <- pmu-events/arch/s390/cf_zec12/transaction.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z10/basic.json <- pmu-events/arch/s390/cf_z10/basic.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z10/extended.json <- pmu-events/arch/s390/cf_z10/extended.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z10/crypto.json <- pmu-events/arch/s390/cf_z10/crypto.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z15/basic.json <- pmu-events/arch/s390/cf_z15/basic.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z15/crypto6.json <- pmu-events/arch/s390/cf_z15/crypto6.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z15/extended.json <- pmu-events/arch/s390/cf_z15/extended.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z15/transaction.json <- pmu-events/arch/s390/cf_z15/transaction.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/mapfile.csv <- pmu-events/arch/s390/mapfile.csv dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z14/basic.json <- pmu-events/arch/s390/cf_z14/basic.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z14/extended.json <- pmu-events/arch/s390/cf_z14/extended.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z14/crypto.json <- pmu-events/arch/s390/cf_z14/crypto.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z14/transaction.json <- pmu-events/arch/s390/cf_z14/transaction.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z16/basic.json <- pmu-events/arch/s390/cf_z16/basic.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z16/crypto6.json <- pmu-events/arch/s390/cf_z16/crypto6.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z16/extended.json <- pmu-events/arch/s390/cf_z16/extended.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z16/transaction.json <- pmu-events/arch/s390/cf_z16/transaction.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z16/pai_crypto.json <- pmu-events/arch/s390/cf_z16/pai_crypto.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z16/pai_ext.json <- pmu-events/arch/s390/cf_z16/pai_ext.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z13/basic.json <- pmu-events/arch/s390/cf_z13/basic.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z13/extended.json <- pmu-events/arch/s390/cf_z13/extended.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z13/crypto.json <- pmu-events/arch/s390/cf_z13/crypto.json dependency dropped.
make[3]: Circular pmu-events/arch/s390/cf_z13/transaction.json <- pmu-events/arch/s390/cf_z13/transaction.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/pmc.json <- pmu-events/arch/powerpc/power10/pmc.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/frontend.json <- pmu-events/arch/powerpc/power10/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/metrics.json <- pmu-events/arch/powerpc/power10/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/nest_metrics.json <- pmu-events/arch/powerpc/power10/nest_metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/others.json <- pmu-events/arch/powerpc/power10/others.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/datasource.json <- pmu-events/arch/powerpc/power10/datasource.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/translation.json <- pmu-events/arch/powerpc/power10/translation.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/memory.json <- pmu-events/arch/powerpc/power10/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/marked.json <- pmu-events/arch/powerpc/power10/marked.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/floating_point.json <- pmu-events/arch/powerpc/power10/floating_point.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/cache.json <- pmu-events/arch/powerpc/power10/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/locks.json <- pmu-events/arch/powerpc/power10/locks.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power10/pipeline.json <- pmu-events/arch/powerpc/power10/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power8/pmc.json <- pmu-events/arch/powerpc/power8/pmc.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power8/frontend.json <- pmu-events/arch/powerpc/power8/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power8/metrics.json <- pmu-events/arch/powerpc/power8/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power8/floating-point.json <- pmu-events/arch/powerpc/power8/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power8/translation.json <- pmu-events/arch/powerpc/power8/translation.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power8/memory.json <- pmu-events/arch/powerpc/power8/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power8/marked.json <- pmu-events/arch/powerpc/power8/marked.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power8/cache.json <- pmu-events/arch/powerpc/power8/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power8/other.json <- pmu-events/arch/powerpc/power8/other.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power8/pipeline.json <- pmu-events/arch/powerpc/power8/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/mapfile.csv <- pmu-events/arch/powerpc/mapfile.csv dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/pmc.json <- pmu-events/arch/powerpc/power9/pmc.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/frontend.json <- pmu-events/arch/powerpc/power9/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/metrics.json <- pmu-events/arch/powerpc/power9/metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/nest_metrics.json <- pmu-events/arch/powerpc/power9/nest_metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/floating-point.json <- pmu-events/arch/powerpc/power9/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/translation.json <- pmu-events/arch/powerpc/power9/translation.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/memory.json <- pmu-events/arch/powerpc/power9/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/marked.json <- pmu-events/arch/powerpc/power9/marked.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/cache.json <- pmu-events/arch/powerpc/power9/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/other.json <- pmu-events/arch/powerpc/power9/other.json dependency dropped.
make[3]: Circular pmu-events/arch/powerpc/power9/pipeline.json <- pmu-events/arch/powerpc/power9/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/silvermont/frontend.json <- pmu-events/arch/x86/silvermont/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/silvermont/floating-point.json <- pmu-events/arch/x86/silvermont/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/silvermont/counter.json <- pmu-events/arch/x86/silvermont/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/silvermont/memory.json <- pmu-events/arch/x86/silvermont/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/silvermont/cache.json <- pmu-events/arch/x86/silvermont/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/silvermont/other.json <- pmu-events/arch/x86/silvermont/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/silvermont/virtual-memory.json <- pmu-events/arch/x86/silvermont/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/silvermont/pipeline.json <- pmu-events/arch/x86/silvermont/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/elkhartlake/frontend.json <- pmu-events/arch/x86/elkhartlake/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/elkhartlake/floating-point.json <- pmu-events/arch/x86/elkhartlake/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/elkhartlake/ehl-metrics.json <- pmu-events/arch/x86/elkhartlake/ehl-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/elkhartlake/counter.json <- pmu-events/arch/x86/elkhartlake/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/elkhartlake/memory.json <- pmu-events/arch/x86/elkhartlake/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/elkhartlake/cache.json <- pmu-events/arch/x86/elkhartlake/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/elkhartlake/other.json <- pmu-events/arch/x86/elkhartlake/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/elkhartlake/virtual-memory.json <- pmu-events/arch/x86/elkhartlake/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/elkhartlake/pipeline.json <- pmu-events/arch/x86/elkhartlake/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/frontend.json <- pmu-events/arch/x86/sandybridge/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/floating-point.json <- pmu-events/arch/x86/sandybridge/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/snb-metrics.json <- pmu-events/arch/x86/sandybridge/snb-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/metricgroups.json <- pmu-events/arch/x86/sandybridge/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/uncore-interconnect.json <- pmu-events/arch/x86/sandybridge/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/counter.json <- pmu-events/arch/x86/sandybridge/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/memory.json <- pmu-events/arch/x86/sandybridge/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/cache.json <- pmu-events/arch/x86/sandybridge/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/other.json <- pmu-events/arch/x86/sandybridge/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/virtual-memory.json <- pmu-events/arch/x86/sandybridge/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/uncore-cache.json <- pmu-events/arch/x86/sandybridge/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sandybridge/pipeline.json <- pmu-events/arch/x86/sandybridge/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-sp/frontend.json <- pmu-events/arch/x86/westmereep-sp/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-sp/floating-point.json <- pmu-events/arch/x86/westmereep-sp/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-sp/counter.json <- pmu-events/arch/x86/westmereep-sp/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-sp/memory.json <- pmu-events/arch/x86/westmereep-sp/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-sp/cache.json <- pmu-events/arch/x86/westmereep-sp/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-sp/other.json <- pmu-events/arch/x86/westmereep-sp/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-sp/virtual-memory.json <- pmu-events/arch/x86/westmereep-sp/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-sp/pipeline.json <- pmu-events/arch/x86/westmereep-sp/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/frontend.json <- pmu-events/arch/x86/icelakex/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/floating-point.json <- pmu-events/arch/x86/icelakex/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/uncore-memory.json <- pmu-events/arch/x86/icelakex/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/uncore-io.json <- pmu-events/arch/x86/icelakex/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/metricgroups.json <- pmu-events/arch/x86/icelakex/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/uncore-interconnect.json <- pmu-events/arch/x86/icelakex/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/counter.json <- pmu-events/arch/x86/icelakex/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/memory.json <- pmu-events/arch/x86/icelakex/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/cache.json <- pmu-events/arch/x86/icelakex/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/uncore-power.json <- pmu-events/arch/x86/icelakex/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/other.json <- pmu-events/arch/x86/icelakex/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/virtual-memory.json <- pmu-events/arch/x86/icelakex/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/uncore-cache.json <- pmu-events/arch/x86/icelakex/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/pipeline.json <- pmu-events/arch/x86/icelakex/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelakex/icx-metrics.json <- pmu-events/arch/x86/icelakex/icx-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/frontend.json <- pmu-events/arch/x86/tigerlake/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/floating-point.json <- pmu-events/arch/x86/tigerlake/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/uncore-memory.json <- pmu-events/arch/x86/tigerlake/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/metricgroups.json <- pmu-events/arch/x86/tigerlake/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/uncore-interconnect.json <- pmu-events/arch/x86/tigerlake/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/counter.json <- pmu-events/arch/x86/tigerlake/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/tgl-metrics.json <- pmu-events/arch/x86/tigerlake/tgl-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/memory.json <- pmu-events/arch/x86/tigerlake/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/cache.json <- pmu-events/arch/x86/tigerlake/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/other.json <- pmu-events/arch/x86/tigerlake/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/uncore-other.json <- pmu-events/arch/x86/tigerlake/uncore-other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/virtual-memory.json <- pmu-events/arch/x86/tigerlake/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/tigerlake/pipeline.json <- pmu-events/arch/x86/tigerlake/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/uncore-cxl.json <- pmu-events/arch/x86/graniterapids/uncore-cxl.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/frontend.json <- pmu-events/arch/x86/graniterapids/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/floating-point.json <- pmu-events/arch/x86/graniterapids/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/uncore-memory.json <- pmu-events/arch/x86/graniterapids/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/uncore-io.json <- pmu-events/arch/x86/graniterapids/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/uncore-interconnect.json <- pmu-events/arch/x86/graniterapids/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/counter.json <- pmu-events/arch/x86/graniterapids/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/memory.json <- pmu-events/arch/x86/graniterapids/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/cache.json <- pmu-events/arch/x86/graniterapids/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/uncore-power.json <- pmu-events/arch/x86/graniterapids/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/other.json <- pmu-events/arch/x86/graniterapids/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/virtual-memory.json <- pmu-events/arch/x86/graniterapids/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/uncore-cache.json <- pmu-events/arch/x86/graniterapids/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/graniterapids/pipeline.json <- pmu-events/arch/x86/graniterapids/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemex/frontend.json <- pmu-events/arch/x86/nehalemex/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemex/floating-point.json <- pmu-events/arch/x86/nehalemex/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemex/counter.json <- pmu-events/arch/x86/nehalemex/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemex/memory.json <- pmu-events/arch/x86/nehalemex/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemex/cache.json <- pmu-events/arch/x86/nehalemex/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemex/other.json <- pmu-events/arch/x86/nehalemex/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemex/virtual-memory.json <- pmu-events/arch/x86/nehalemex/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemex/pipeline.json <- pmu-events/arch/x86/nehalemex/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen1/floating-point.json <- pmu-events/arch/x86/amdzen1/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen1/data-fabric.json <- pmu-events/arch/x86/amdzen1/data-fabric.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen1/memory.json <- pmu-events/arch/x86/amdzen1/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen1/branch.json <- pmu-events/arch/x86/amdzen1/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen1/cache.json <- pmu-events/arch/x86/amdzen1/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen1/core.json <- pmu-events/arch/x86/amdzen1/core.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen1/recommended.json <- pmu-events/arch/x86/amdzen1/recommended.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen1/other.json <- pmu-events/arch/x86/amdzen1/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/frontend.json <- pmu-events/arch/x86/broadwellde/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/floating-point.json <- pmu-events/arch/x86/broadwellde/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/uncore-memory.json <- pmu-events/arch/x86/broadwellde/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/uncore-io.json <- pmu-events/arch/x86/broadwellde/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/metricgroups.json <- pmu-events/arch/x86/broadwellde/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/uncore-interconnect.json <- pmu-events/arch/x86/broadwellde/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/counter.json <- pmu-events/arch/x86/broadwellde/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/memory.json <- pmu-events/arch/x86/broadwellde/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/cache.json <- pmu-events/arch/x86/broadwellde/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/bdwde-metrics.json <- pmu-events/arch/x86/broadwellde/bdwde-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/uncore-power.json <- pmu-events/arch/x86/broadwellde/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/other.json <- pmu-events/arch/x86/broadwellde/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/virtual-memory.json <- pmu-events/arch/x86/broadwellde/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/uncore-cache.json <- pmu-events/arch/x86/broadwellde/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellde/pipeline.json <- pmu-events/arch/x86/broadwellde/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-dp/frontend.json <- pmu-events/arch/x86/westmereep-dp/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-dp/floating-point.json <- pmu-events/arch/x86/westmereep-dp/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-dp/counter.json <- pmu-events/arch/x86/westmereep-dp/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-dp/memory.json <- pmu-events/arch/x86/westmereep-dp/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-dp/cache.json <- pmu-events/arch/x86/westmereep-dp/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-dp/other.json <- pmu-events/arch/x86/westmereep-dp/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-dp/virtual-memory.json <- pmu-events/arch/x86/westmereep-dp/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereep-dp/pipeline.json <- pmu-events/arch/x86/westmereep-dp/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/frontend.json <- pmu-events/arch/x86/alderlaken/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/floating-point.json <- pmu-events/arch/x86/alderlaken/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/adln-metrics.json <- pmu-events/arch/x86/alderlaken/adln-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/uncore-memory.json <- pmu-events/arch/x86/alderlaken/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/metricgroups.json <- pmu-events/arch/x86/alderlaken/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/uncore-interconnect.json <- pmu-events/arch/x86/alderlaken/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/memory.json <- pmu-events/arch/x86/alderlaken/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/cache.json <- pmu-events/arch/x86/alderlaken/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/other.json <- pmu-events/arch/x86/alderlaken/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/uncore-other.json <- pmu-events/arch/x86/alderlaken/uncore-other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/virtual-memory.json <- pmu-events/arch/x86/alderlaken/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlaken/pipeline.json <- pmu-events/arch/x86/alderlaken/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/frontend.json <- pmu-events/arch/x86/rocketlake/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/rkl-metrics.json <- pmu-events/arch/x86/rocketlake/rkl-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/floating-point.json <- pmu-events/arch/x86/rocketlake/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/metricgroups.json <- pmu-events/arch/x86/rocketlake/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/uncore-interconnect.json <- pmu-events/arch/x86/rocketlake/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/counter.json <- pmu-events/arch/x86/rocketlake/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/memory.json <- pmu-events/arch/x86/rocketlake/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/cache.json <- pmu-events/arch/x86/rocketlake/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/other.json <- pmu-events/arch/x86/rocketlake/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/uncore-other.json <- pmu-events/arch/x86/rocketlake/uncore-other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/virtual-memory.json <- pmu-events/arch/x86/rocketlake/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/rocketlake/pipeline.json <- pmu-events/arch/x86/rocketlake/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/frontend.json <- pmu-events/arch/x86/jaketown/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/floating-point.json <- pmu-events/arch/x86/jaketown/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/uncore-memory.json <- pmu-events/arch/x86/jaketown/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/uncore-io.json <- pmu-events/arch/x86/jaketown/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/jkt-metrics.json <- pmu-events/arch/x86/jaketown/jkt-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/metricgroups.json <- pmu-events/arch/x86/jaketown/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/uncore-interconnect.json <- pmu-events/arch/x86/jaketown/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/counter.json <- pmu-events/arch/x86/jaketown/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/memory.json <- pmu-events/arch/x86/jaketown/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/cache.json <- pmu-events/arch/x86/jaketown/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/uncore-power.json <- pmu-events/arch/x86/jaketown/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/other.json <- pmu-events/arch/x86/jaketown/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/virtual-memory.json <- pmu-events/arch/x86/jaketown/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/uncore-cache.json <- pmu-events/arch/x86/jaketown/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/jaketown/pipeline.json <- pmu-events/arch/x86/jaketown/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/frontend.json <- pmu-events/arch/x86/broadwellx/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/floating-point.json <- pmu-events/arch/x86/broadwellx/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/uncore-memory.json <- pmu-events/arch/x86/broadwellx/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/uncore-io.json <- pmu-events/arch/x86/broadwellx/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/metricgroups.json <- pmu-events/arch/x86/broadwellx/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/uncore-interconnect.json <- pmu-events/arch/x86/broadwellx/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/counter.json <- pmu-events/arch/x86/broadwellx/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/memory.json <- pmu-events/arch/x86/broadwellx/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/cache.json <- pmu-events/arch/x86/broadwellx/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/uncore-power.json <- pmu-events/arch/x86/broadwellx/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/bdx-metrics.json <- pmu-events/arch/x86/broadwellx/bdx-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/other.json <- pmu-events/arch/x86/broadwellx/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/virtual-memory.json <- pmu-events/arch/x86/broadwellx/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/uncore-cache.json <- pmu-events/arch/x86/broadwellx/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwellx/pipeline.json <- pmu-events/arch/x86/broadwellx/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmont/frontend.json <- pmu-events/arch/x86/goldmont/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmont/floating-point.json <- pmu-events/arch/x86/goldmont/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmont/counter.json <- pmu-events/arch/x86/goldmont/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmont/memory.json <- pmu-events/arch/x86/goldmont/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmont/cache.json <- pmu-events/arch/x86/goldmont/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmont/other.json <- pmu-events/arch/x86/goldmont/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmont/virtual-memory.json <- pmu-events/arch/x86/goldmont/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmont/pipeline.json <- pmu-events/arch/x86/goldmont/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/frontend.json <- pmu-events/arch/x86/ivybridge/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/floating-point.json <- pmu-events/arch/x86/ivybridge/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/metricgroups.json <- pmu-events/arch/x86/ivybridge/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/uncore-interconnect.json <- pmu-events/arch/x86/ivybridge/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/counter.json <- pmu-events/arch/x86/ivybridge/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/memory.json <- pmu-events/arch/x86/ivybridge/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/cache.json <- pmu-events/arch/x86/ivybridge/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/other.json <- pmu-events/arch/x86/ivybridge/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/virtual-memory.json <- pmu-events/arch/x86/ivybridge/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/uncore-cache.json <- pmu-events/arch/x86/ivybridge/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/pipeline.json <- pmu-events/arch/x86/ivybridge/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivybridge/ivb-metrics.json <- pmu-events/arch/x86/ivybridge/ivb-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/frontend.json <- pmu-events/arch/x86/snowridgex/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/floating-point.json <- pmu-events/arch/x86/snowridgex/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/uncore-memory.json <- pmu-events/arch/x86/snowridgex/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/uncore-io.json <- pmu-events/arch/x86/snowridgex/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/uncore-interconnect.json <- pmu-events/arch/x86/snowridgex/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/counter.json <- pmu-events/arch/x86/snowridgex/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/memory.json <- pmu-events/arch/x86/snowridgex/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/cache.json <- pmu-events/arch/x86/snowridgex/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/uncore-power.json <- pmu-events/arch/x86/snowridgex/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/other.json <- pmu-events/arch/x86/snowridgex/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/virtual-memory.json <- pmu-events/arch/x86/snowridgex/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/uncore-cache.json <- pmu-events/arch/x86/snowridgex/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/snowridgex/pipeline.json <- pmu-events/arch/x86/snowridgex/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/frontend.json <- pmu-events/arch/x86/haswellx/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/floating-point.json <- pmu-events/arch/x86/haswellx/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/uncore-memory.json <- pmu-events/arch/x86/haswellx/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/uncore-io.json <- pmu-events/arch/x86/haswellx/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/metricgroups.json <- pmu-events/arch/x86/haswellx/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/uncore-interconnect.json <- pmu-events/arch/x86/haswellx/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/counter.json <- pmu-events/arch/x86/haswellx/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/memory.json <- pmu-events/arch/x86/haswellx/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/hsx-metrics.json <- pmu-events/arch/x86/haswellx/hsx-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/cache.json <- pmu-events/arch/x86/haswellx/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/uncore-power.json <- pmu-events/arch/x86/haswellx/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/other.json <- pmu-events/arch/x86/haswellx/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/virtual-memory.json <- pmu-events/arch/x86/haswellx/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/uncore-cache.json <- pmu-events/arch/x86/haswellx/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswellx/pipeline.json <- pmu-events/arch/x86/haswellx/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/bonnell/frontend.json <- pmu-events/arch/x86/bonnell/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/bonnell/floating-point.json <- pmu-events/arch/x86/bonnell/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/bonnell/counter.json <- pmu-events/arch/x86/bonnell/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/bonnell/memory.json <- pmu-events/arch/x86/bonnell/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/bonnell/cache.json <- pmu-events/arch/x86/bonnell/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/bonnell/other.json <- pmu-events/arch/x86/bonnell/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/bonnell/virtual-memory.json <- pmu-events/arch/x86/bonnell/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/bonnell/pipeline.json <- pmu-events/arch/x86/bonnell/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/frontend.json <- pmu-events/arch/x86/haswell/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/floating-point.json <- pmu-events/arch/x86/haswell/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/metricgroups.json <- pmu-events/arch/x86/haswell/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/uncore-interconnect.json <- pmu-events/arch/x86/haswell/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/counter.json <- pmu-events/arch/x86/haswell/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/hsw-metrics.json <- pmu-events/arch/x86/haswell/hsw-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/memory.json <- pmu-events/arch/x86/haswell/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/cache.json <- pmu-events/arch/x86/haswell/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/other.json <- pmu-events/arch/x86/haswell/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/uncore-other.json <- pmu-events/arch/x86/haswell/uncore-other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/virtual-memory.json <- pmu-events/arch/x86/haswell/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/uncore-cache.json <- pmu-events/arch/x86/haswell/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/haswell/pipeline.json <- pmu-events/arch/x86/haswell/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/frontend.json <- pmu-events/arch/x86/broadwell/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/floating-point.json <- pmu-events/arch/x86/broadwell/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/bdw-metrics.json <- pmu-events/arch/x86/broadwell/bdw-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/metricgroups.json <- pmu-events/arch/x86/broadwell/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/uncore-interconnect.json <- pmu-events/arch/x86/broadwell/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/counter.json <- pmu-events/arch/x86/broadwell/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/memory.json <- pmu-events/arch/x86/broadwell/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/cache.json <- pmu-events/arch/x86/broadwell/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/other.json <- pmu-events/arch/x86/broadwell/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/virtual-memory.json <- pmu-events/arch/x86/broadwell/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/uncore-cache.json <- pmu-events/arch/x86/broadwell/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/broadwell/pipeline.json <- pmu-events/arch/x86/broadwell/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/frontend.json <- pmu-events/arch/x86/grandridge/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/grr-metrics.json <- pmu-events/arch/x86/grandridge/grr-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/floating-point.json <- pmu-events/arch/x86/grandridge/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/uncore-memory.json <- pmu-events/arch/x86/grandridge/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/uncore-io.json <- pmu-events/arch/x86/grandridge/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/metricgroups.json <- pmu-events/arch/x86/grandridge/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/uncore-interconnect.json <- pmu-events/arch/x86/grandridge/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/counter.json <- pmu-events/arch/x86/grandridge/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/memory.json <- pmu-events/arch/x86/grandridge/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/cache.json <- pmu-events/arch/x86/grandridge/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/uncore-power.json <- pmu-events/arch/x86/grandridge/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/other.json <- pmu-events/arch/x86/grandridge/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/virtual-memory.json <- pmu-events/arch/x86/grandridge/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/uncore-cache.json <- pmu-events/arch/x86/grandridge/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/grandridge/pipeline.json <- pmu-events/arch/x86/grandridge/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/lunarlake/frontend.json <- pmu-events/arch/x86/lunarlake/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/lunarlake/memory.json <- pmu-events/arch/x86/lunarlake/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/lunarlake/cache.json <- pmu-events/arch/x86/lunarlake/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/lunarlake/other.json <- pmu-events/arch/x86/lunarlake/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/lunarlake/virtual-memory.json <- pmu-events/arch/x86/lunarlake/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/lunarlake/pipeline.json <- pmu-events/arch/x86/lunarlake/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen2/floating-point.json <- pmu-events/arch/x86/amdzen2/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen2/data-fabric.json <- pmu-events/arch/x86/amdzen2/data-fabric.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen2/memory.json <- pmu-events/arch/x86/amdzen2/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen2/branch.json <- pmu-events/arch/x86/amdzen2/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen2/cache.json <- pmu-events/arch/x86/amdzen2/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen2/core.json <- pmu-events/arch/x86/amdzen2/core.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen2/recommended.json <- pmu-events/arch/x86/amdzen2/recommended.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen2/other.json <- pmu-events/arch/x86/amdzen2/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/frontend.json <- pmu-events/arch/x86/alderlake/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/floating-point.json <- pmu-events/arch/x86/alderlake/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/uncore-memory.json <- pmu-events/arch/x86/alderlake/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/metricgroups.json <- pmu-events/arch/x86/alderlake/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/uncore-interconnect.json <- pmu-events/arch/x86/alderlake/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/memory.json <- pmu-events/arch/x86/alderlake/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/adl-metrics.json <- pmu-events/arch/x86/alderlake/adl-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/cache.json <- pmu-events/arch/x86/alderlake/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/other.json <- pmu-events/arch/x86/alderlake/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/uncore-other.json <- pmu-events/arch/x86/alderlake/uncore-other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/virtual-memory.json <- pmu-events/arch/x86/alderlake/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/alderlake/pipeline.json <- pmu-events/arch/x86/alderlake/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen4/floating-point.json <- pmu-events/arch/x86/amdzen4/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen4/data-fabric.json <- pmu-events/arch/x86/amdzen4/data-fabric.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen4/memory-controller.json <- pmu-events/arch/x86/amdzen4/memory-controller.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen4/memory.json <- pmu-events/arch/x86/amdzen4/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen4/branch.json <- pmu-events/arch/x86/amdzen4/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen4/cache.json <- pmu-events/arch/x86/amdzen4/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen4/core.json <- pmu-events/arch/x86/amdzen4/core.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen4/recommended.json <- pmu-events/arch/x86/amdzen4/recommended.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen4/other.json <- pmu-events/arch/x86/amdzen4/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen4/pipeline.json <- pmu-events/arch/x86/amdzen4/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemep/frontend.json <- pmu-events/arch/x86/nehalemep/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemep/floating-point.json <- pmu-events/arch/x86/nehalemep/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemep/counter.json <- pmu-events/arch/x86/nehalemep/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemep/memory.json <- pmu-events/arch/x86/nehalemep/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemep/cache.json <- pmu-events/arch/x86/nehalemep/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemep/other.json <- pmu-events/arch/x86/nehalemep/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemep/virtual-memory.json <- pmu-events/arch/x86/nehalemep/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/nehalemep/pipeline.json <- pmu-events/arch/x86/nehalemep/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/l2-cache.json <- pmu-events/arch/x86/amdzen5/l2-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/floating-point.json <- pmu-events/arch/x86/amdzen5/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/load-store.json <- pmu-events/arch/x86/amdzen5/load-store.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/branch-prediction.json <- pmu-events/arch/x86/amdzen5/branch-prediction.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/memory-controller.json <- pmu-events/arch/x86/amdzen5/memory-controller.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/decode.json <- pmu-events/arch/x86/amdzen5/decode.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/recommended.json <- pmu-events/arch/x86/amdzen5/recommended.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/execution.json <- pmu-events/arch/x86/amdzen5/execution.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/l3-cache.json <- pmu-events/arch/x86/amdzen5/l3-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/pipeline.json <- pmu-events/arch/x86/amdzen5/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen5/inst-cache.json <- pmu-events/arch/x86/amdzen5/inst-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/frontend.json <- pmu-events/arch/x86/meteorlake/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/floating-point.json <- pmu-events/arch/x86/meteorlake/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/uncore-memory.json <- pmu-events/arch/x86/meteorlake/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/metricgroups.json <- pmu-events/arch/x86/meteorlake/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/uncore-interconnect.json <- pmu-events/arch/x86/meteorlake/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/memory.json <- pmu-events/arch/x86/meteorlake/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/cache.json <- pmu-events/arch/x86/meteorlake/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/other.json <- pmu-events/arch/x86/meteorlake/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/uncore-other.json <- pmu-events/arch/x86/meteorlake/uncore-other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/virtual-memory.json <- pmu-events/arch/x86/meteorlake/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/mtl-metrics.json <- pmu-events/arch/x86/meteorlake/mtl-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/uncore-cache.json <- pmu-events/arch/x86/meteorlake/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/meteorlake/pipeline.json <- pmu-events/arch/x86/meteorlake/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/frontend.json <- pmu-events/arch/x86/skylake/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/floating-point.json <- pmu-events/arch/x86/skylake/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/metricgroups.json <- pmu-events/arch/x86/skylake/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/uncore-interconnect.json <- pmu-events/arch/x86/skylake/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/counter.json <- pmu-events/arch/x86/skylake/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/memory.json <- pmu-events/arch/x86/skylake/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/skl-metrics.json <- pmu-events/arch/x86/skylake/skl-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/cache.json <- pmu-events/arch/x86/skylake/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/other.json <- pmu-events/arch/x86/skylake/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/virtual-memory.json <- pmu-events/arch/x86/skylake/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/uncore-cache.json <- pmu-events/arch/x86/skylake/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylake/pipeline.json <- pmu-events/arch/x86/skylake/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/knightslanding/frontend.json <- pmu-events/arch/x86/knightslanding/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/knightslanding/floating-point.json <- pmu-events/arch/x86/knightslanding/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/knightslanding/uncore-memory.json <- pmu-events/arch/x86/knightslanding/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/knightslanding/uncore-io.json <- pmu-events/arch/x86/knightslanding/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/knightslanding/counter.json <- pmu-events/arch/x86/knightslanding/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/knightslanding/memory.json <- pmu-events/arch/x86/knightslanding/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/knightslanding/cache.json <- pmu-events/arch/x86/knightslanding/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/knightslanding/virtual-memory.json <- pmu-events/arch/x86/knightslanding/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/knightslanding/uncore-cache.json <- pmu-events/arch/x86/knightslanding/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/knightslanding/pipeline.json <- pmu-events/arch/x86/knightslanding/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/mapfile.csv <- pmu-events/arch/x86/mapfile.csv dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/uncore-cxl.json <- pmu-events/arch/x86/emeraldrapids/uncore-cxl.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/emr-metrics.json <- pmu-events/arch/x86/emeraldrapids/emr-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/frontend.json <- pmu-events/arch/x86/emeraldrapids/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/floating-point.json <- pmu-events/arch/x86/emeraldrapids/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/uncore-memory.json <- pmu-events/arch/x86/emeraldrapids/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/uncore-io.json <- pmu-events/arch/x86/emeraldrapids/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/metricgroups.json <- pmu-events/arch/x86/emeraldrapids/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/uncore-interconnect.json <- pmu-events/arch/x86/emeraldrapids/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/counter.json <- pmu-events/arch/x86/emeraldrapids/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/memory.json <- pmu-events/arch/x86/emeraldrapids/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/cache.json <- pmu-events/arch/x86/emeraldrapids/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/uncore-power.json <- pmu-events/arch/x86/emeraldrapids/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/other.json <- pmu-events/arch/x86/emeraldrapids/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/virtual-memory.json <- pmu-events/arch/x86/emeraldrapids/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/uncore-cache.json <- pmu-events/arch/x86/emeraldrapids/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/emeraldrapids/pipeline.json <- pmu-events/arch/x86/emeraldrapids/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmontplus/frontend.json <- pmu-events/arch/x86/goldmontplus/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmontplus/floating-point.json <- pmu-events/arch/x86/goldmontplus/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmontplus/counter.json <- pmu-events/arch/x86/goldmontplus/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmontplus/memory.json <- pmu-events/arch/x86/goldmontplus/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmontplus/cache.json <- pmu-events/arch/x86/goldmontplus/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmontplus/other.json <- pmu-events/arch/x86/goldmontplus/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmontplus/virtual-memory.json <- pmu-events/arch/x86/goldmontplus/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/goldmontplus/pipeline.json <- pmu-events/arch/x86/goldmontplus/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/uncore-cxl.json <- pmu-events/arch/x86/sierraforest/uncore-cxl.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/frontend.json <- pmu-events/arch/x86/sierraforest/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/floating-point.json <- pmu-events/arch/x86/sierraforest/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/uncore-memory.json <- pmu-events/arch/x86/sierraforest/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/uncore-io.json <- pmu-events/arch/x86/sierraforest/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/srf-metrics.json <- pmu-events/arch/x86/sierraforest/srf-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/metricgroups.json <- pmu-events/arch/x86/sierraforest/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/uncore-interconnect.json <- pmu-events/arch/x86/sierraforest/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/counter.json <- pmu-events/arch/x86/sierraforest/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/memory.json <- pmu-events/arch/x86/sierraforest/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/cache.json <- pmu-events/arch/x86/sierraforest/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/uncore-power.json <- pmu-events/arch/x86/sierraforest/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/other.json <- pmu-events/arch/x86/sierraforest/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/virtual-memory.json <- pmu-events/arch/x86/sierraforest/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/uncore-cache.json <- pmu-events/arch/x86/sierraforest/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sierraforest/pipeline.json <- pmu-events/arch/x86/sierraforest/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/frontend.json <- pmu-events/arch/x86/ivytown/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/floating-point.json <- pmu-events/arch/x86/ivytown/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/uncore-memory.json <- pmu-events/arch/x86/ivytown/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/uncore-io.json <- pmu-events/arch/x86/ivytown/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/metricgroups.json <- pmu-events/arch/x86/ivytown/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/uncore-interconnect.json <- pmu-events/arch/x86/ivytown/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/counter.json <- pmu-events/arch/x86/ivytown/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/memory.json <- pmu-events/arch/x86/ivytown/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/cache.json <- pmu-events/arch/x86/ivytown/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/uncore-power.json <- pmu-events/arch/x86/ivytown/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/other.json <- pmu-events/arch/x86/ivytown/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/virtual-memory.json <- pmu-events/arch/x86/ivytown/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/uncore-cache.json <- pmu-events/arch/x86/ivytown/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/pipeline.json <- pmu-events/arch/x86/ivytown/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/ivytown/ivt-metrics.json <- pmu-events/arch/x86/ivytown/ivt-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/clx-metrics.json <- pmu-events/arch/x86/cascadelakex/clx-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/frontend.json <- pmu-events/arch/x86/cascadelakex/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/floating-point.json <- pmu-events/arch/x86/cascadelakex/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/uncore-memory.json <- pmu-events/arch/x86/cascadelakex/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/uncore-io.json <- pmu-events/arch/x86/cascadelakex/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/metricgroups.json <- pmu-events/arch/x86/cascadelakex/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/uncore-interconnect.json <- pmu-events/arch/x86/cascadelakex/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/counter.json <- pmu-events/arch/x86/cascadelakex/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/memory.json <- pmu-events/arch/x86/cascadelakex/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/cache.json <- pmu-events/arch/x86/cascadelakex/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/uncore-power.json <- pmu-events/arch/x86/cascadelakex/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/other.json <- pmu-events/arch/x86/cascadelakex/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/virtual-memory.json <- pmu-events/arch/x86/cascadelakex/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/uncore-cache.json <- pmu-events/arch/x86/cascadelakex/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/cascadelakex/pipeline.json <- pmu-events/arch/x86/cascadelakex/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereex/frontend.json <- pmu-events/arch/x86/westmereex/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereex/floating-point.json <- pmu-events/arch/x86/westmereex/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereex/counter.json <- pmu-events/arch/x86/westmereex/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereex/memory.json <- pmu-events/arch/x86/westmereex/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereex/cache.json <- pmu-events/arch/x86/westmereex/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereex/other.json <- pmu-events/arch/x86/westmereex/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereex/virtual-memory.json <- pmu-events/arch/x86/westmereex/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/westmereex/pipeline.json <- pmu-events/arch/x86/westmereex/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/uncore-cxl.json <- pmu-events/arch/x86/sapphirerapids/uncore-cxl.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/frontend.json <- pmu-events/arch/x86/sapphirerapids/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/floating-point.json <- pmu-events/arch/x86/sapphirerapids/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/uncore-memory.json <- pmu-events/arch/x86/sapphirerapids/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/uncore-io.json <- pmu-events/arch/x86/sapphirerapids/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/metricgroups.json <- pmu-events/arch/x86/sapphirerapids/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/uncore-interconnect.json <- pmu-events/arch/x86/sapphirerapids/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/counter.json <- pmu-events/arch/x86/sapphirerapids/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/memory.json <- pmu-events/arch/x86/sapphirerapids/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/cache.json <- pmu-events/arch/x86/sapphirerapids/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/uncore-power.json <- pmu-events/arch/x86/sapphirerapids/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/other.json <- pmu-events/arch/x86/sapphirerapids/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/virtual-memory.json <- pmu-events/arch/x86/sapphirerapids/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/uncore-cache.json <- pmu-events/arch/x86/sapphirerapids/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/pipeline.json <- pmu-events/arch/x86/sapphirerapids/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/sapphirerapids/spr-metrics.json <- pmu-events/arch/x86/sapphirerapids/spr-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen3/floating-point.json <- pmu-events/arch/x86/amdzen3/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen3/data-fabric.json <- pmu-events/arch/x86/amdzen3/data-fabric.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen3/memory.json <- pmu-events/arch/x86/amdzen3/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen3/branch.json <- pmu-events/arch/x86/amdzen3/branch.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen3/cache.json <- pmu-events/arch/x86/amdzen3/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen3/core.json <- pmu-events/arch/x86/amdzen3/core.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen3/recommended.json <- pmu-events/arch/x86/amdzen3/recommended.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/amdzen3/other.json <- pmu-events/arch/x86/amdzen3/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/frontend.json <- pmu-events/arch/x86/icelake/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/floating-point.json <- pmu-events/arch/x86/icelake/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/metricgroups.json <- pmu-events/arch/x86/icelake/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/uncore-interconnect.json <- pmu-events/arch/x86/icelake/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/icl-metrics.json <- pmu-events/arch/x86/icelake/icl-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/counter.json <- pmu-events/arch/x86/icelake/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/memory.json <- pmu-events/arch/x86/icelake/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/cache.json <- pmu-events/arch/x86/icelake/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/other.json <- pmu-events/arch/x86/icelake/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/uncore-other.json <- pmu-events/arch/x86/icelake/uncore-other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/virtual-memory.json <- pmu-events/arch/x86/icelake/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/icelake/pipeline.json <- pmu-events/arch/x86/icelake/pipeline.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/frontend.json <- pmu-events/arch/x86/skylakex/frontend.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/floating-point.json <- pmu-events/arch/x86/skylakex/floating-point.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/uncore-memory.json <- pmu-events/arch/x86/skylakex/uncore-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/uncore-io.json <- pmu-events/arch/x86/skylakex/uncore-io.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/metricgroups.json <- pmu-events/arch/x86/skylakex/metricgroups.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/uncore-interconnect.json <- pmu-events/arch/x86/skylakex/uncore-interconnect.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/counter.json <- pmu-events/arch/x86/skylakex/counter.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/memory.json <- pmu-events/arch/x86/skylakex/memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/cache.json <- pmu-events/arch/x86/skylakex/cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/uncore-power.json <- pmu-events/arch/x86/skylakex/uncore-power.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/other.json <- pmu-events/arch/x86/skylakex/other.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/virtual-memory.json <- pmu-events/arch/x86/skylakex/virtual-memory.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/skx-metrics.json <- pmu-events/arch/x86/skylakex/skx-metrics.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/uncore-cache.json <- pmu-events/arch/x86/skylakex/uncore-cache.json dependency dropped.
make[3]: Circular pmu-events/arch/x86/skylakex/pipeline.json <- pmu-events/arch/x86/skylakex/pipeline.json dependency dropped.
==> /tmp/stdout <==
CC util/arm-spe-decoder/arm-spe-pkt-decoder.o
CC util/arm-spe-decoder/arm-spe-decoder.o
CC util/perf-regs-arch/perf_regs_arm.o
CC util/intel-pt-decoder/intel-pt-log.o
GEN pmu-events/arch/x86/amdzen1/extra-metrics.json
CC util/intel-pt-decoder/intel-pt-decoder.o
CC util/perf-regs-arch/perf_regs_csky.o
CC util/path.o
CC util/hisi-ptt-decoder/hisi-ptt-pkt-decoder.o
CC util/perf-regs-arch/perf_regs_loongarch.o
CC util/perf-regs-arch/perf_regs_mips.o
CC util/scripting-engines/trace-event-perl.o
CC util/print_binary.o
GEN pmu-events/arch/x86/amdzen2/extra-metrics.json
CC util/scripting-engines/trace-event-python.o
CC util/print_insn.o
==> /tmp/stderr <==
Traceback (most recent call last):
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 42, in <module>
main()
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 32, in main
LoadEvents(directory)
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/metric.py", line 26, in LoadEvents
for x in json.load(open(f"{directory}/{filename}")):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 293, in load
return loads(fp.read(),
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
==> /tmp/stdout <==
CC util/perf-regs-arch/perf_regs_powerpc.o
CC util/rlimit.o
CC util/argv_split.o
CC util/perf-regs-arch/perf_regs_riscv.o
GEN pmu-events/arch/x86/amdzen3/extra-metrics.json
CC util/rbtree.o
CC util/libstring.o
CC util/bitmap.o
CC util/hweight.o
==> /tmp/stderr <==
make[3]: *** [pmu-events/Build:49: pmu-events/arch/x86/amdzen1/extra-metrics.json] Error 1
make[3]: *** Deleting file 'pmu-events/arch/x86/amdzen1/extra-metrics.json'
==> /tmp/stdout <==
CC util/perf-regs-arch/perf_regs_s390.o
==> /tmp/stderr <==
make[3]: *** Waiting for unfinished jobs....
==> /tmp/stdout <==
CC util/perf-regs-arch/perf_regs_x86.o
CC util/strbuf.o
CC util/smt.o
CC util/string.o
==> /tmp/stderr <==
Traceback (most recent call last):
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 42, in <module>
main()
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 32, in main
LoadEvents(directory)
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/metric.py", line 26, in LoadEvents
for x in json.load(open(f"{directory}/{filename}")):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 293, in load
return loads(fp.read(),
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
==> /tmp/stdout <==
CC util/strlist.o
CC util/strfilter.o
==> /tmp/stderr <==
make[3]: *** [pmu-events/Build:49: pmu-events/arch/x86/amdzen2/extra-metrics.json] Error 1
make[3]: *** Deleting file 'pmu-events/arch/x86/amdzen2/extra-metrics.json'
==> /tmp/stdout <==
CC util/top.o
LD trace/beauty/tracepoints/perf-in.o
CC util/usage.o
CC util/dso.o
CC util/dsos.o
CC util/symbol.o
CC util/symbol_fprintf.o
CC util/map_symbol.o
CC util/color.o
CC util/color_config.o
CC util/metricgroup.o
CC util/header.o
CC util/callchain.o
CC util/values.o
CC util/debug.o
CC util/fncache.o
CC util/machine.o
CC util/pstack.o
CC util/map.o
CC util/tool.o
CC util/session.o
CC util/sample-raw.o
CC util/maps.o
==> /tmp/stderr <==
Traceback (most recent call last):
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 42, in <module>
main()
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/amd_metrics.py", line 32, in main
LoadEvents(directory)
File "/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf/pmu-events/metric.py", line 26, in LoadEvents
for x in json.load(open(f"{directory}/{filename}")):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 293, in load
return loads(fp.read(),
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
make[3]: *** [pmu-events/Build:49: pmu-events/arch/x86/amdzen3/extra-metrics.json] Error 1
make[3]: *** Deleting file 'pmu-events/arch/x86/amdzen3/extra-metrics.json'
make[2]: *** [Makefile.perf:765: pmu-events/pmu-events-in.o] Error 2
make[2]: *** Waiting for unfinished jobs....
==> /tmp/stdout <==
CC util/s390-sample-raw.o
CC util/amd-sample-raw.o
CC util/syscalltbl.o
CC util/ordered-events.o
CC util/namespaces.o
CC util/comm.o
CC util/thread.o
CC util/threads.o
CC util/thread_map.o
CC util/parse-events-bison.o
BISON util/pmu-bison.c
CC util/pmus.o
LD trace/beauty/perf-in.o
CC util/svghelper.o
CC util/trace-event-info.o
CC util/trace-event-scripting.o
CC util/trace-event.o
CC util/trace-event-parse.o
CC util/trace-event-read.o
CC util/sort.o
CC util/hist.o
CC util/util.o
CC util/cpumap.o
CC util/affinity.o
CC util/cgroup.o
CC util/cputopo.o
CC util/target.o
CC util/rblist.o
CC util/intlist.o
CC util/vdso.o
CC util/stat.o
CC util/counts.o
CC util/stat-shadow.o
CC util/stat-display.o
CC util/perf_api_probe.o
CC util/record.o
CC util/srcline.o
CC util/srccode.o
CC util/synthetic-events.o
CC util/data.o
CC util/tsc.o
CC util/cloexec.o
CC util/rwsem.o
CC util/call-path.o
LD tests/workloads/perf-test-in.o
CC util/thread-stack.o
CC util/spark.o
CC util/topdown.o
CC util/iostat.o
CC util/stream.o
CC util/intel-pt.o
CC util/auxtrace.o
CC util/intel-bts.o
CC util/hisi-ptt.o
CC util/s390-cpumsf.o
CC util/arm-spe.o
CC util/parse-branch-options.o
CC util/dump-insn.o
CC util/cs-etm-base.o
CC util/parse-regs-options.o
CC util/parse-sublevel-options.o
CC util/term.o
CC util/help-unknown-cmd.o
CC util/dlfilter.o
CC util/mem-events.o
LD ui/tui/perf-ui-in.o
CC util/vsprintf.o
CC util/mem-info.o
CC util/units.o
CC util/time-utils.o
CC util/branch.o
BISON util/expr-bison.c
CC util/mem2node.o
LD util/perf-regs-arch/perf-util-in.o
CC util/clockid.o
CC util/list_sort.o
CC util/mutex.o
CC util/sharded_mutex.o
CC util/intel-tpebs.o
CC util/bpf_map.o
CC util/symbol-elf.o
CC util/probe-file.o
CC util/probe-event.o
CC util/probe-finder.o
CC util/dwarf-aux.o
CC util/dwarf-regs.o
CC util/debuginfo.o
CC util/annotate-data.o
CC util/unwind-libunwind-local.o
CC util/unwind-libunwind.o
CC util/data-convert-bt.o
CC util/data-convert-json.o
CC util/zlib.o
CC util/lzma.o
CC util/zstd.o
CC util/cap.o
CXX util/demangle-cxx.o
CC util/demangle-ocaml.o
CC util/demangle-rust.o
CC util/demangle-java.o
CC util/jitdump.o
CC util/genelf.o
CC util/genelf_debug.o
CC util/perf-hooks.o
CC util/bpf-utils.o
CC util/bpf-event.o
CC util/pfm.o
FLEX util/parse-events-flex.c
FLEX util/pmu-flex.c
CC util/pmu-bison.o
FLEX util/expr-flex.c
CC util/expr-bison.o
LD arch/x86/tests/perf-test-in.o
CC util/intel-pt-decoder/intel-pt-insn-decoder.o
LD arch/x86/perf-test-in.o
CC util/pmu.o
CC util/pmu-flex.o
CC util/expr-flex.o
CC util/expr.o
CC util/parse-events.o
LD util/hisi-ptt-decoder/perf-util-in.o
CC util/parse-events-flex.o
LD arch/perf-test-in.o
LD scripts/python/Perf-Trace-Util/perf-util-in.o
LD util/arm-spe-decoder/perf-util-in.o
LD arch/x86/util/perf-util-in.o
LD arch/x86/perf-util-in.o
LD arch/perf-util-in.o
LD bench/perf-bench-in.o
LD perf-bench-in.o
LD scripts/perl/Perf-Trace-Util/perf-util-in.o
LD scripts/perf-util-in.o
LD tests/perf-test-in.o
LD perf-test-in.o
LD util/scripting-engines/perf-util-in.o
LD ui/browsers/perf-ui-in.o
LD ui/perf-ui-in.o
LD perf-ui-in.o
LD util/intel-pt-decoder/perf-util-in.o
LD perf-in.o
LD util/perf-util-in.o
LD perf-util-in.o
==> /tmp/stderr <==
make[1]: *** [Makefile.perf:292: sub-make] Error 2
make: *** [Makefile:76: all] Error 2
==> /tmp/stdout <==
make: Leaving directory '/usr/src/perf_selftests-x86_64-rhel-8.3-bpf-1b58625961de2638d2d798db2f87b3ea0f3a53ed/tools/perf'
make perf failed
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2024-10-11 4:33 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-26 17:35 [PATCH v4 00/12] Foundations for metric generation with Python Ian Rogers
2024-09-26 17:35 ` [PATCH v4 01/12] perf jevents: Allow multiple metricgroups.json files Ian Rogers
2024-09-26 17:35 ` [PATCH v4 02/12] perf jevents: Update metric constraint support Ian Rogers
2024-09-26 17:35 ` [PATCH v4 03/12] perf jevents: Add descriptions to metricgroup abstraction Ian Rogers
2024-09-26 17:35 ` [PATCH v4 04/12] perf jevents: Allow metric groups not to be named Ian Rogers
2024-09-26 17:35 ` [PATCH v4 05/12] perf jevents: Support parsing negative exponents Ian Rogers
2024-09-26 17:35 ` [PATCH v4 06/12] perf jevents: Term list fix in event parsing Ian Rogers
2024-09-26 17:35 ` [PATCH v4 07/12] perf jevents: Add threshold expressions to Metric Ian Rogers
2024-09-26 17:35 ` [PATCH v4 08/12] perf jevents: Move json encoding to its own functions Ian Rogers
2024-09-26 17:35 ` [PATCH v4 09/12] perf jevents: Drop duplicate pending metrics Ian Rogers
2024-09-26 17:35 ` [PATCH v4 10/12] perf jevents: Skip optional metrics in metric group list Ian Rogers
2024-09-26 17:35 ` [PATCH v4 11/12] perf jevents: Build support for generating metrics from python Ian Rogers
2024-09-26 17:35 ` [PATCH v4 12/12] perf jevents: Add load event json to verify and allow fallbacks Ian Rogers
2024-10-11 4:32 ` kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).