public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jiri Olsa <jolsa@kernel.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: lkml <linux-kernel@vger.kernel.org>,
	David Ahern <dsahern@gmail.com>, Ingo Molnar <mingo@kernel.org>,
	Namhyung Kim <namhyung@kernel.org>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>
Subject: [PATCH 3/3] perf build: Fix traceevent plugins build race
Date: Thu, 26 Nov 2015 14:54:04 +0100	[thread overview]
Message-ID: <1448546044-28973-3-git-send-email-jolsa@kernel.org> (raw)
In-Reply-To: <1448546044-28973-1-git-send-email-jolsa@kernel.org>

Ingo reported following build failure:

  $ make clean install
  ...
    CC       plugin_kmem.o
  fixdep: error opening depfile: ./.plugin_hrtimer.o.d: No such file or directory
  /home/mingo/tip/tools/build/Makefile.build:77: recipe for target
  'plugin_hrtimer.o' failed
  make[3]: *** [plugin_hrtimer.o] Error 2
  Makefile:189: recipe for target 'plugin_hrtimer-in.o' failed
  make[2]: *** [plugin_hrtimer-in.o] Error 2
  Makefile.perf:414: recipe for target 'libtraceevent_plugins' failed
  make[1]: *** [libtraceevent_plugins] Error 2
  make[1]: *** Waiting for unfinished jobs....

Currently we have the install-traceevent-plugins target being
dependent on $(LIBTRACEEVENT), which will actualy not build
any plugin. So the install-traceevent-plugins target itself
will try to build plugins, but..

Plugins built is also triggered by perf build itself via
libtraceevent_plugins target.

This might cause a race having one make thread removing
temp files from another and result in above error. Fixing
this by having proper plugins build dependency before
installing plugins.

Reported-and-Tested-by:: Ingo Molnar <mingo@kernel.org>
Link: http://lkml.kernel.org/n/tip-8mlj1skxxg89p4bpo6qnt930@git.kernel.org
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
---
 tools/perf/Makefile.perf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
index d2b20a1f4a21..7338a7e62fcd 100644
--- a/tools/perf/Makefile.perf
+++ b/tools/perf/Makefile.perf
@@ -420,7 +420,7 @@ $(LIBTRACEEVENT)-clean:
 	$(call QUIET_CLEAN, libtraceevent)
 	$(Q)$(MAKE) -C $(TRACE_EVENT_DIR) O=$(OUTPUT) clean >/dev/null
 
-install-traceevent-plugins: $(LIBTRACEEVENT)
+install-traceevent-plugins: libtraceevent_plugins
 	$(Q)$(MAKE) -C $(TRACE_EVENT_DIR) $(LIBTRACEEVENT_FLAGS) O=$(OUTPUT) install_plugins
 
 $(LIBAPI): fixdep FORCE
-- 
2.4.3


  parent reply	other threads:[~2015-11-26 13:54 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-26 13:54 [PATCH 1/3] tools build: Introduce features dump include makefile Jiri Olsa
2015-11-26 13:54 ` [PATCH 2/3] perf build: Use FEATURE-INCLUDE in bpf subproject Jiri Olsa
2015-11-26 16:31   ` Arnaldo Carvalho de Melo
2015-11-26 18:11     ` Jiri Olsa
2015-11-26 18:12     ` Jiri Olsa
2015-11-26 18:50       ` [PATCH] tools build: Use fixdep with OUTPUT path prefix Jiri Olsa
2015-11-26 19:31         ` Arnaldo Carvalho de Melo
2015-11-27  7:45         ` [tip:perf/core] " tip-bot for Jiri Olsa
2015-11-26 13:54 ` Jiri Olsa [this message]
2015-11-26 16:36   ` [PATCH 3/3] perf build: Fix traceevent plugins build race Arnaldo Carvalho de Melo
2015-11-27  7:44   ` [tip:perf/core] " tip-bot for Jiri Olsa
2015-11-26 16:23 ` [PATCH 1/3] tools build: Introduce features dump include makefile 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=1448546044-28973-3-git-send-email-jolsa@kernel.org \
    --to=jolsa@kernel.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@kernel.org \
    --cc=dsahern@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@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