All of lore.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 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.