All of lore.kernel.org
 help / color / mirror / Atom feed
From: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
To: linux-kernel@vger.kernel.org,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>
Cc: Kan Liang <kan.liang@linux.intel.com>,
	Jiri Olsa <jolsa@kernel.org>, Andi Kleen <ak@linux.intel.com>,
	Dmitry Monakhov <dmtrmonakhov@yandex-team.ru>
Subject: [PATCH v2 1/3] perf tool: fix reading new topology attribute "core_cpus"
Date: Wed, 29 Apr 2020 19:19:47 +0300	[thread overview]
Message-ID: <158817718710.747528.11009278875028211991.stgit@buzz> (raw)

Check access("devices/system/cpu/cpu%d/topology/core_cpus", F_OK) fails,
unless current directory is "/sys". Simply try read this file first.

Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
Fixes: 0ccdb8407a46 ("perf tools: Apply new CPU topology sysfs attributes")
---
 tools/perf/util/smt.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/perf/util/smt.c b/tools/perf/util/smt.c
index 3b791ef2cd50..8481842e9edb 100644
--- a/tools/perf/util/smt.c
+++ b/tools/perf/util/smt.c
@@ -24,13 +24,13 @@ int smt_on(void)
 
 		snprintf(fn, sizeof fn,
 			"devices/system/cpu/cpu%d/topology/core_cpus", cpu);
-		if (access(fn, F_OK) == -1) {
+		if (sysfs__read_str(fn, &str, &strlen) < 0) {
 			snprintf(fn, sizeof fn,
 				"devices/system/cpu/cpu%d/topology/thread_siblings",
 				cpu);
+			if (sysfs__read_str(fn, &str, &strlen) < 0)
+				continue;
 		}
-		if (sysfs__read_str(fn, &str, &strlen) < 0)
-			continue;
 		/* Entry is hex, but does not have 0x, so need custom parser */
 		siblings = strtoull(str, NULL, 16);
 		free(str);


             reply	other threads:[~2020-04-29 16:19 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-29 16:19 Konstantin Khlebnikov [this message]
2020-04-29 16:22 ` [PATCH v2 2/3] perf tool: fix detecting smt at machines with more than 32 cpus Konstantin Khlebnikov
2020-04-29 18:13   ` Arnaldo Carvalho de Melo
2020-04-29 18:38     ` Konstantin Khlebnikov
2020-04-30 13:37       ` Arnaldo Carvalho de Melo
2020-04-29 16:23 ` [PATCH v2 3/3] perf tool: simplify checking active smt Konstantin Khlebnikov
2020-04-29 18:16   ` Arnaldo Carvalho de Melo
2020-05-08 13:05   ` [tip: perf/core] perf tools: Simplify checking if SMT is active tip-bot2 for Konstantin Khlebnikov
2020-04-29 18:11 ` [PATCH v2 1/3] perf tool: fix reading new topology attribute "core_cpus" Arnaldo Carvalho de Melo
2020-05-08 13:05 ` [tip: perf/core] perf tools: Fix " tip-bot2 for Konstantin Khlebnikov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=158817718710.747528.11009278875028211991.stgit@buzz \
    --to=khlebnikov@yandex-team.ru \
    --cc=acme@kernel.org \
    --cc=ak@linux.intel.com \
    --cc=dmtrmonakhov@yandex-team.ru \
    --cc=jolsa@kernel.org \
    --cc=kan.liang@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.