Thread (24 messages) 24 messages, 3 authors, 2021-02-03

Re: [PATCH 5/8] drivers/perf: hisi: Update DDRC PMU for programable counter

From: Shaokun Zhang <hidden>
Date: 2021-01-27 08:18:40

Hi John,

在 2021/1/26 23:56, John Garry 写道:
On 26/01/2021 12:33, John Garry wrote:
quoted
quoted
  }
@@ -332,8 +506,16 @@ static int hisi_ddrc_pmu_probe(struct platform_device *pdev)
          return ret;
      }
-    name = devm_kasprintf(&pdev->dev, GFP_KERNEL, "hisi_sccl%u_ddrc%u",
-                  ddrc_pmu->sccl_id, ddrc_pmu->index_id);
+    if (ddrc_pmu->identifier >= HISI_PMU_V2)
+        name = devm_kasprintf(&pdev->dev, GFP_KERNEL,
+                      "hisi_sccl%u_ddrc%u_%u",
+                      ddrc_pmu->sccl_id, ddrc_pmu->index_id,
+                      ddrc_pmu->sub_id);
I think that this is actually ok for perf.
Sounds good,
Checking pmu_uncore_alias_match():

bool pmu_uncore_alias_match(const char *pmu_name, const char *name)
{
    char *tmp = NULL, *tok, *str;
    bool res;

...

    for (; tok; name += strlen(tok), tok = strtok_r(NULL, ",", &tmp)) {
        name = strstr(name, tok);
        if (!name) {
            res = false;
            goto out;
        }
    }

    ...
}

We match each token in @pmu_name, "hisi_sccl,ddrc". So we would match "hisi_sccl%u_" part with
"hisi_sccl" token and then match "ddrc%u_%u" with "ddrc" token.

But it would be good to triple check. We need the JSON files created at some stage anyway :)
Sure, will do it.

Thanks,
Shaokun
quoted
I don't think perf can support event aliasing in this format (hisi_scclX_Y_Z), but I need to
double-check.
quoted
+    else
+        name = devm_kasprintf(&pdev->dev, GFP_KERNEL, 
.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help