From: Andi Kleen <a...@linux.intel.com>

Add a PERF_CPUID variable to override the CPUID of the current CPU (within
the current architecture). This is useful for testing, so that all event
lists can be tested on a single system.

Signed-off-by: Andi Kleen <a...@linux.intel.com>
Signed-off-by: Sukadev Bhattiprolu <suka...@linux.vnet.ibm.com>

v2: Fix double free in earlier version.
    Print actual CPUID being used with verbose option.
---
 tools/perf/util/pmu.c |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c
index 790c64f..300975e 100644
--- a/tools/perf/util/pmu.c
+++ b/tools/perf/util/pmu.c
@@ -477,10 +477,16 @@ static int pmu_add_cpu_aliases(struct list_head *head)
        struct pmu_event *pe;
        char *cpuid;
 
-       cpuid = get_cpuid_str();
+       cpuid = getenv("PERF_CPUID");
+       if (cpuid)
+               cpuid = strdup(cpuid);
+       if (!cpuid)
+               cpuid = get_cpuid_str();
        if (!cpuid)
                return 0;
 
+       pr_debug("Using CPUID %s\n", cpuid);
+
        i = 0;
        while (1) {
                map = &pmu_events_map[i++];
-- 
1.7.9.5

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to