public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Will Deacon <will.deacon@arm.com>
To: "david.ahern@oracle.com" <david.ahern@oracle.com>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Mark Rutland <Mark.Rutland@arm.com>,
	"jolsa@kernel.org" <jolsa@kernel.org>,
	"namhyung@kernel.org" <namhyung@kernel.org>,
	"acme@redhat.com" <acme@redhat.com>
Subject: Re: arm/arm64 perf build issue with mainline
Date: Thu, 23 Apr 2015 15:04:54 +0100	[thread overview]
Message-ID: <20150423140454.GJ1652@arm.com> (raw)
In-Reply-To: <20150423112916.GF1652@arm.com>

On Thu, Apr 23, 2015 at 12:29:16PM +0100, Will Deacon wrote:
> Hi all,
> 
> Commit 6428c59a97de ("perf tools: Set JOBS based on CPU or processor")
> causes weird behaviour on arm/arm64 platforms because we use the "CPU"
> prefix for things like:
> 
> CPU implementer : 0x41
> CPU architecture: 8
> CPU variant     : 0x0
> CPU part        : 0xd03
> CPU revision    : 0
> 
> in /proc/cpuinfo. Consequently, a 6 core machine ends up doing:
> 
> will@confinement-loaf:~/linux/tools/perf$ make
>   BUILD:   Doing 'make -j36' parallel build
> 
> which is a little overwhelming. Any chance we can predicate the extra
> part of the regex on $(ARCH) being sparc?

Scratch that, how about using sysconf instead? Patch below...

Will

--->8

>From 28740111e81aa9247bf48e3125dc43cc31d94e6f Mon Sep 17 00:00:00 2001
From: Will Deacon <will.deacon@arm.com>
Date: Thu, 23 Apr 2015 15:00:16 +0100
Subject: [PATCH] tools: perf: use getconf to determine number of online CPUs

Parsing /proc/cpuinfo is a fiddly, arch-dependent business anda recent
change to get it working for Sparc broke arm and arm64 platforms.

Instead, use sysconf to determine the number of online CPUs and avoid
parsing /proc/cpuinfo entirely.

Signed-off-by: Will Deacon <will.deacon@arm.com>
---
 tools/perf/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index c699dc35eef9..c26cb04ce6bd 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -24,7 +24,7 @@ unexport MAKEFLAGS
 # (To override it, run 'make JOBS=1' and similar.)
 #
 ifeq ($(JOBS),)
-  JOBS := $(shell egrep -c '^processor|^CPU' /proc/cpuinfo 2>/dev/null)
+  JOBS := $(shell getconf _NPROCESSORS_ONLN 2>/dev/null)
   ifeq ($(JOBS),0)
     JOBS := 1
   endif
-- 
2.1.4


  reply	other threads:[~2015-04-23 14:04 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-23 11:29 arm/arm64 perf build issue with mainline Will Deacon
2015-04-23 14:04 ` Will Deacon [this message]
2015-04-23 14:16   ` David Ahern
2015-04-24 16:10     ` Arnaldo Carvalho de Melo
2015-04-24 16:22       ` Will Deacon
2015-04-24 17:21         ` David Ahern
2015-04-27 16:26           ` Arnaldo Carvalho de Melo
2015-04-27 17:13             ` David Ahern
2015-04-27 17:40               ` Arnaldo Carvalho de Melo
2015-04-27 17:49                 ` Jiri Olsa
2015-04-27 18:39                   ` Arnaldo Carvalho de Melo
2015-04-27 18:41                     ` Jiri Olsa
2015-04-27 18:45                       ` Arnaldo Carvalho de Melo
2015-04-27 18:52                         ` Jiri Olsa
2015-04-27 19:00                           ` Arnaldo Carvalho de Melo
2015-04-27 19:03                             ` Jiri Olsa
2015-05-06  3:09   ` [tip:perf/core] perf tools: Use getconf to determine number of online CPUs tip-bot for Will Deacon
2015-05-13  6:24   ` [tip:perf/urgent] " tip-bot for Will Deacon
2015-04-23 14:29 ` arm/arm64 perf build issue with mainline David Ahern
2015-05-11  8:21   ` Ingo Molnar
2015-05-11 12:31     ` Will Deacon
2015-05-11 12:33       ` Ingo Molnar
2015-05-11 15:58         ` acme
2015-05-11 15:59           ` acme
2015-05-11 17:29             ` Will Deacon
2015-05-11 19:01               ` Arnaldo Carvalho de Melo

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=20150423140454.GJ1652@arm.com \
    --to=will.deacon@arm.com \
    --cc=Mark.Rutland@arm.com \
    --cc=acme@redhat.com \
    --cc=david.ahern@oracle.com \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=namhyung@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox