[PATCH v5 01/15] perf jevents metric: Correct Function equality

From: Ian Rogers
Date: Thu Jan 26 2023 - 18:37:17 EST


rhs may not be defined, say for source_count, so add a guard.

Reviewed-by: Kajol Jain<kjain@xxxxxxxxxxxxx>
---
tools/perf/pmu-events/metric.py | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/tools/perf/pmu-events/metric.py b/tools/perf/pmu-events/metric.py
index 4797ed4fd817..2f2fd220e843 100644
--- a/tools/perf/pmu-events/metric.py
+++ b/tools/perf/pmu-events/metric.py
@@ -261,8 +261,10 @@ class Function(Expression):

def Equals(self, other: Expression) -> bool:
if isinstance(other, Function):
- return self.fn == other.fn and self.lhs.Equals(
- other.lhs) and self.rhs.Equals(other.rhs)
+ result = self.fn == other.fn and self.lhs.Equals(other.lhs)
+ if self.rhs:
+ result = result and self.rhs.Equals(other.rhs)
+ return result
return False


--
2.39.1.456.gfc5497dd1b-goog