perf tools: Allow to use cpuinfo on LoongArch
authorYanteng Si <siyanteng@loongson.cn>
Fri, 25 Aug 2023 11:28:02 +0000 (19:28 +0800)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 29 Aug 2023 17:13:48 +0000 (14:13 -0300)
Define these macros so that the CPU name can be displayed when running
'perf report' and 'perf timechart'.

Committer notes:

No need to have:

if (strcasestr(buf, "Model Name")) {
strlcpy(cpu_m, &buf[13], 255);
break;
} else if (strcasestr(buf, "model name")) {
strlcpy(cpu_m, &buf[13], 255);
break;
}

As the point of strcasestr() is to be case insensitive to both the
haystack and the needle, so simplify the above to just:

if (strcasestr(buf, "model name")) {
strlcpy(cpu_m, &buf[13], 255);
break;
}

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Acked-by: Huacai Chen <chenhuacai@loongson.cn>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Ian Rogers <irogers@google.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: loongarch@lists.linux.dev
Cc: loongson-kernel@lists.loongnix.cn
Link: https://lore.kernel.org/r/db968a186a10e4629fe10c26a1210f7126ad41ec.1692962043.git.siyanteng@loongson.cn
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/header.c
tools/perf/util/svghelper.c

index 9f35d86..99c61cd 100644 (file)
@@ -456,6 +456,8 @@ static int write_cpudesc(struct feat_fd *ff,
 #define CPUINFO_PROC   { "Processor", }
 #elif defined(__xtensa__)
 #define CPUINFO_PROC   { "core ID", }
+#elif defined(__loongarch__)
+#define CPUINFO_PROC   { "Model Name", }
 #else
 #define CPUINFO_PROC   { "model name", }
 #endif
index 5c62d31..0e4dc31 100644 (file)
@@ -331,7 +331,7 @@ static char *cpu_model(void)
        file = fopen("/proc/cpuinfo", "r");
        if (file) {
                while (fgets(buf, 255, file)) {
-                       if (strstr(buf, "model name")) {
+                       if (strcasestr(buf, "model name")) {
                                strlcpy(cpu_m, &buf[13], 255);
                                break;
                        }