All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tools/perf: fix use of alternatives to find JDIR
@ 2018-09-06 22:18 Jarod Wilson
  2018-09-10  8:05 ` Jiri Olsa
  2018-10-18  6:18 ` [tip:perf/urgent] perf tools: Fix " tip-bot for Jarod Wilson
  0 siblings, 2 replies; 5+ messages in thread
From: Jarod Wilson @ 2018-09-06 22:18 UTC (permalink / raw)
  To: linux-kernel
  Cc: Jarod Wilson, Peter Zijlstra, Ingo Molnar,
	Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
	Namhyung Kim

When a build is run from something like a cron job, the user's $PATH is
rather minimal, of note, not including /usr/sbin in my own case. Because
of that, an automated rpm package build ultimately fails to find
libperf-jvmti.so, because somewhere within the build, this happens...

/bin/sh: alternatives: command not found
/bin/sh: alternatives: command not found
Makefile.config:849: No openjdk development package found, please install
JDK package, e.g. openjdk-8-jdk, java-1.8.0-openjdk-devel

...and while the build continues, libperf-jvmti.so isn't built, and things
fall down when rpm tries to find all the %files specified. Exact same
system builds everything just fine when the job is launched from a login
shell instead of a cron job, since alternatives is in $PATH, so openjdk is
actually found.

The test required to get into this section of code actually specifies the
full path, as does a block just above it, so let's do that here too.

CC: Peter Zijlstra <peterz@infradead.org>
CC: Ingo Molnar <mingo@redhat.com>
CC: Arnaldo Carvalho de Melo <acme@kernel.org>
CC: Alexander Shishkin <alexander.shishkin@linux.intel.com>
CC: Jiri Olsa <jolsa@redhat.com>
CC: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Jarod Wilson <jarod@redhat.com>
---
 tools/perf/Makefile.config | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
index f6d1a03c7523..e30d20fb482d 100644
--- a/tools/perf/Makefile.config
+++ b/tools/perf/Makefile.config
@@ -833,7 +833,7 @@ ifndef NO_JVMTI
     JDIR=$(shell /usr/sbin/update-java-alternatives -l | head -1 | awk '{print $$3}')
   else
     ifneq (,$(wildcard /usr/sbin/alternatives))
-      JDIR=$(shell alternatives --display java | tail -1 | cut -d' ' -f 5 | sed 's%/jre/bin/java.%%g')
+      JDIR=$(shell /usr/sbin/alternatives --display java | tail -1 | cut -d' ' -f 5 | sed 's%/jre/bin/java.%%g')
     endif
   endif
   ifndef JDIR
-- 
2.16.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] tools/perf: fix use of alternatives to find JDIR
  2018-09-06 22:18 [PATCH] tools/perf: fix use of alternatives to find JDIR Jarod Wilson
@ 2018-09-10  8:05 ` Jiri Olsa
  2018-10-16 13:09   ` Jiri Olsa
  2018-10-18  6:18 ` [tip:perf/urgent] perf tools: Fix " tip-bot for Jarod Wilson
  1 sibling, 1 reply; 5+ messages in thread
From: Jiri Olsa @ 2018-09-10  8:05 UTC (permalink / raw)
  To: Jarod Wilson
  Cc: linux-kernel, Peter Zijlstra, Ingo Molnar,
	Arnaldo Carvalho de Melo, Alexander Shishkin, Namhyung Kim

On Thu, Sep 06, 2018 at 06:18:12PM -0400, Jarod Wilson wrote:
> When a build is run from something like a cron job, the user's $PATH is
> rather minimal, of note, not including /usr/sbin in my own case. Because
> of that, an automated rpm package build ultimately fails to find
> libperf-jvmti.so, because somewhere within the build, this happens...
> 
> /bin/sh: alternatives: command not found
> /bin/sh: alternatives: command not found
> Makefile.config:849: No openjdk development package found, please install
> JDK package, e.g. openjdk-8-jdk, java-1.8.0-openjdk-devel
> 
> ...and while the build continues, libperf-jvmti.so isn't built, and things
> fall down when rpm tries to find all the %files specified. Exact same
> system builds everything just fine when the job is launched from a login
> shell instead of a cron job, since alternatives is in $PATH, so openjdk is
> actually found.
> 
> The test required to get into this section of code actually specifies the
> full path, as does a block just above it, so let's do that here too.
> 
> CC: Peter Zijlstra <peterz@infradead.org>
> CC: Ingo Molnar <mingo@redhat.com>
> CC: Arnaldo Carvalho de Melo <acme@kernel.org>
> CC: Alexander Shishkin <alexander.shishkin@linux.intel.com>
> CC: Jiri Olsa <jolsa@redhat.com>
> CC: Namhyung Kim <namhyung@kernel.org>
> Signed-off-by: Jarod Wilson <jarod@redhat.com>

Acked-by: Jiri Olsa <jolsa@redhat.com>

thanks,
jirka

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] tools/perf: fix use of alternatives to find JDIR
  2018-09-10  8:05 ` Jiri Olsa
@ 2018-10-16 13:09   ` Jiri Olsa
  2018-10-16 15:04     ` Arnaldo Carvalho de Melo
  0 siblings, 1 reply; 5+ messages in thread
From: Jiri Olsa @ 2018-10-16 13:09 UTC (permalink / raw)
  To: Jarod Wilson, Arnaldo Carvalho de Melo
  Cc: linux-kernel, Peter Zijlstra, Ingo Molnar, Alexander Shishkin,
	Namhyung Kim

On Mon, Sep 10, 2018 at 10:05:46AM +0200, Jiri Olsa wrote:
> On Thu, Sep 06, 2018 at 06:18:12PM -0400, Jarod Wilson wrote:
> > When a build is run from something like a cron job, the user's $PATH is
> > rather minimal, of note, not including /usr/sbin in my own case. Because
> > of that, an automated rpm package build ultimately fails to find
> > libperf-jvmti.so, because somewhere within the build, this happens...
> > 
> > /bin/sh: alternatives: command not found
> > /bin/sh: alternatives: command not found
> > Makefile.config:849: No openjdk development package found, please install
> > JDK package, e.g. openjdk-8-jdk, java-1.8.0-openjdk-devel
> > 
> > ...and while the build continues, libperf-jvmti.so isn't built, and things
> > fall down when rpm tries to find all the %files specified. Exact same
> > system builds everything just fine when the job is launched from a login
> > shell instead of a cron job, since alternatives is in $PATH, so openjdk is
> > actually found.
> > 
> > The test required to get into this section of code actually specifies the
> > full path, as does a block just above it, so let's do that here too.
> > 
> > CC: Peter Zijlstra <peterz@infradead.org>
> > CC: Ingo Molnar <mingo@redhat.com>
> > CC: Arnaldo Carvalho de Melo <acme@kernel.org>
> > CC: Alexander Shishkin <alexander.shishkin@linux.intel.com>
> > CC: Jiri Olsa <jolsa@redhat.com>
> > CC: Namhyung Kim <namhyung@kernel.org>
> > Signed-off-by: Jarod Wilson <jarod@redhat.com>
> 
> Acked-by: Jiri Olsa <jolsa@redhat.com>

Arnaldo,
could you please pull in this one?

thanks,
jirka

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] tools/perf: fix use of alternatives to find JDIR
  2018-10-16 13:09   ` Jiri Olsa
@ 2018-10-16 15:04     ` Arnaldo Carvalho de Melo
  0 siblings, 0 replies; 5+ messages in thread
From: Arnaldo Carvalho de Melo @ 2018-10-16 15:04 UTC (permalink / raw)
  To: Jiri Olsa
  Cc: Jarod Wilson, linux-kernel, Peter Zijlstra, Ingo Molnar,
	Alexander Shishkin, Namhyung Kim

Em Tue, Oct 16, 2018 at 03:09:59PM +0200, Jiri Olsa escreveu:
> On Mon, Sep 10, 2018 at 10:05:46AM +0200, Jiri Olsa wrote:
> > On Thu, Sep 06, 2018 at 06:18:12PM -0400, Jarod Wilson wrote:
> > > When a build is run from something like a cron job, the user's $PATH is
> > > rather minimal, of note, not including /usr/sbin in my own case. Because
> > > of that, an automated rpm package build ultimately fails to find
> > > libperf-jvmti.so, because somewhere within the build, this happens...
> > > 
> > > /bin/sh: alternatives: command not found
> > > /bin/sh: alternatives: command not found
> > > Makefile.config:849: No openjdk development package found, please install
> > > JDK package, e.g. openjdk-8-jdk, java-1.8.0-openjdk-devel
> > > 
> > > ...and while the build continues, libperf-jvmti.so isn't built, and things
> > > fall down when rpm tries to find all the %files specified. Exact same
> > > system builds everything just fine when the job is launched from a login
> > > shell instead of a cron job, since alternatives is in $PATH, so openjdk is
> > > actually found.
> > > 
> > > The test required to get into this section of code actually specifies the
> > > full path, as does a block just above it, so let's do that here too.
> > > 
> > > CC: Peter Zijlstra <peterz@infradead.org>
> > > CC: Ingo Molnar <mingo@redhat.com>
> > > CC: Arnaldo Carvalho de Melo <acme@kernel.org>
> > > CC: Alexander Shishkin <alexander.shishkin@linux.intel.com>
> > > CC: Jiri Olsa <jolsa@redhat.com>
> > > CC: Namhyung Kim <namhyung@kernel.org>
> > > Signed-off-by: Jarod Wilson <jarod@redhat.com>
> > 
> > Acked-by: Jiri Olsa <jolsa@redhat.com>
> 
> Arnaldo,
> could you please pull in this one?

Sure, I thought I had already, will now.

- Arnaldo

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [tip:perf/urgent] perf tools: Fix use of alternatives to find JDIR
  2018-09-06 22:18 [PATCH] tools/perf: fix use of alternatives to find JDIR Jarod Wilson
  2018-09-10  8:05 ` Jiri Olsa
@ 2018-10-18  6:18 ` tip-bot for Jarod Wilson
  1 sibling, 0 replies; 5+ messages in thread
From: tip-bot for Jarod Wilson @ 2018-10-18  6:18 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: alexander.shishkin, peterz, linux-kernel, wcohen, namhyung,
	mingo, eranian, jarod, hpa, tglx, acme, jolsa

Commit-ID:  36b8d4628d3cc8f5a748e508cce8673bc00fc63c
Gitweb:     https://git.kernel.org/tip/36b8d4628d3cc8f5a748e508cce8673bc00fc63c
Author:     Jarod Wilson <jarod@redhat.com>
AuthorDate: Thu, 6 Sep 2018 18:18:12 -0400
Committer:  Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Tue, 16 Oct 2018 12:06:47 -0300

perf tools: Fix use of alternatives to find JDIR

When a build is run from something like a cron job, the user's $PATH is
rather minimal, of note, not including /usr/sbin in my own case. Because
of that, an automated rpm package build ultimately fails to find
libperf-jvmti.so, because somewhere within the build, this happens...

  /bin/sh: alternatives: command not found
  /bin/sh: alternatives: command not found
  Makefile.config:849: No openjdk development package found, please install
  JDK package, e.g. openjdk-8-jdk, java-1.8.0-openjdk-devel

...and while the build continues, libperf-jvmti.so isn't built, and
things fall down when rpm tries to find all the %files specified. Exact
same system builds everything just fine when the job is launched from a
login shell instead of a cron job, since alternatives is in $PATH, so
openjdk is actually found.

The test required to get into this section of code actually specifies
the full path, as does a block just above it, so let's do that here too.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: William Cohen <wcohen@redhat.com>
Fixes: d4dfdf00d43e ("perf jvmti: Plug compilation into perf build")
Link: http://lkml.kernel.org/r/20180906221812.11167-1-jarod@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/Makefile.config | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
index f6d1a03c7523..e30d20fb482d 100644
--- a/tools/perf/Makefile.config
+++ b/tools/perf/Makefile.config
@@ -833,7 +833,7 @@ ifndef NO_JVMTI
     JDIR=$(shell /usr/sbin/update-java-alternatives -l | head -1 | awk '{print $$3}')
   else
     ifneq (,$(wildcard /usr/sbin/alternatives))
-      JDIR=$(shell alternatives --display java | tail -1 | cut -d' ' -f 5 | sed 's%/jre/bin/java.%%g')
+      JDIR=$(shell /usr/sbin/alternatives --display java | tail -1 | cut -d' ' -f 5 | sed 's%/jre/bin/java.%%g')
     endif
   endif
   ifndef JDIR

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-10-18  6:19 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-06 22:18 [PATCH] tools/perf: fix use of alternatives to find JDIR Jarod Wilson
2018-09-10  8:05 ` Jiri Olsa
2018-10-16 13:09   ` Jiri Olsa
2018-10-16 15:04     ` Arnaldo Carvalho de Melo
2018-10-18  6:18 ` [tip:perf/urgent] perf tools: Fix " tip-bot for Jarod Wilson

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.