Jiri Slaby 206328
From: Steve Clevenger <scclevenger@os.amperecomputing.com>
Jiri Slaby 206328
Date: Mon, 27 Feb 2023 16:54:32 -0700
Jiri Slaby 206328
Subject: [PATCH] coresight-etm4: Fix for() loop drvdata->nr_addr_cmp range bug
Jiri Slaby 206328
References: bsc#1012628
Jiri Slaby 206328
Patch-mainline: 6.2.11
Jiri Slaby 206328
Git-commit: bf84937e882009075f57fd213836256fc65d96bc
Jiri Slaby 206328
Jiri Slaby 206328
commit bf84937e882009075f57fd213836256fc65d96bc upstream.
Jiri Slaby 206328
Jiri Slaby 206328
In etm4_enable_hw, fix for() loop range to represent address comparator pairs.
Jiri Slaby 206328
Jiri Slaby 206328
Fixes: 2e1cdfe184b5 ("coresight-etm4x: Adding CoreSight ETM4x driver")
Jiri Slaby 206328
Cc: stable@vger.kernel.org
Jiri Slaby 206328
Signed-off-by: Steve Clevenger <scclevenger@os.amperecomputing.com>
Jiri Slaby 206328
Reviewed-by: James Clark <james.clark@arm.com>
Jiri Slaby 206328
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Jiri Slaby 206328
Link: https://lore.kernel.org/r/4a4ee61ce8ef402615a4528b21a051de3444fb7b.1677540079.git.scclevenger@os.amperecomputing.com
Jiri Slaby 206328
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Jiri Slaby 206328
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Jiri Slaby 206328
---
Jiri Slaby 206328
 drivers/hwtracing/coresight/coresight-etm4x-core.c | 2 +-
Jiri Slaby 206328
 1 file changed, 1 insertion(+), 1 deletion(-)
Jiri Slaby 206328
Jiri Slaby 206328
diff --git a/drivers/hwtracing/coresight/coresight-etm4x-core.c b/drivers/hwtracing/coresight/coresight-etm4x-core.c
Jiri Slaby 206328
index d6e2f5b9..a65b4101 100644
Jiri Slaby 206328
--- a/drivers/hwtracing/coresight/coresight-etm4x-core.c
Jiri Slaby 206328
+++ b/drivers/hwtracing/coresight/coresight-etm4x-core.c
Jiri Slaby 206328
@@ -454,7 +454,7 @@ static int etm4_enable_hw(struct etmv4_drvdata *drvdata)
Jiri Slaby 206328
 		if (etm4x_sspcicrn_present(drvdata, i))
Jiri Slaby 206328
 			etm4x_relaxed_write32(csa, config->ss_pe_cmp[i], TRCSSPCICRn(i));
Jiri Slaby 206328
 	}
Jiri Slaby 206328
-	for (i = 0; i < drvdata->nr_addr_cmp; i++) {
Jiri Slaby 206328
+	for (i = 0; i < drvdata->nr_addr_cmp * 2; i++) {
Jiri Slaby 206328
 		etm4x_relaxed_write64(csa, config->addr_val[i], TRCACVRn(i));
Jiri Slaby 206328
 		etm4x_relaxed_write64(csa, config->addr_acc[i], TRCACATRn(i));
Jiri Slaby 206328
 	}
Jiri Slaby 206328
-- 
Jiri Slaby 206328
2.35.3
Jiri Slaby 206328