summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2011-04-12 18:59:10 -0400
committerSteven Rostedt <rostedt@goodmis.org>2011-05-16 14:45:03 -0400
commit85356f802225fedeee8c3e65bdd93b263ace0a8b (patch)
tree4b9b29634f4235a7a185a7c3ea2947cef422b99b /scripts
parentdfad3d598c4bbbaf137588e22bac1ce624529f7e (diff)
downloadblackbird-op-linux-85356f802225fedeee8c3e65bdd93b263ace0a8b.tar.gz
blackbird-op-linux-85356f802225fedeee8c3e65bdd93b263ace0a8b.zip
kbuild/recordmcount: Add RECORDMCOUNT_WARN to warn about mcount callers
When mcount is called in a section that ftrace will not modify it into a nop, we want to warn about this. But not warn about this always. Now if the user builds the kernel with the option RECORDMCOUNT_WARN=1 then the build will warn about mcount callers that are ignored and will just waste execution time. Acked-by: Michal Marek <mmarek@suse.cz> Cc: linux-kbuild@vger.kernel.org Link: http://lkml.kernel.org/r/20110421023738.714956282@goodmis.org Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/Makefile.build5
1 files changed, 4 insertions, 1 deletions
diff --git a/scripts/Makefile.build b/scripts/Makefile.build
index d5f925abe4d2..fdca952f6a40 100644
--- a/scripts/Makefile.build
+++ b/scripts/Makefile.build
@@ -244,13 +244,16 @@ endif
ifdef CONFIG_FTRACE_MCOUNT_RECORD
ifdef BUILD_C_RECORDMCOUNT
+ifeq ("$(origin RECORDMCOUNT_WARN)", "command line")
+ RECORDMCOUNT_FLAGS = -w
+endif
# Due to recursion, we must skip empty.o.
# The empty.o file is created in the make process in order to determine
# the target endianness and word size. It is made before all other C
# files, including recordmcount.
sub_cmd_record_mcount = \
if [ $(@) != "scripts/mod/empty.o" ]; then \
- $(objtree)/scripts/recordmcount "$(@)"; \
+ $(objtree)/scripts/recordmcount $(RECORDMCOUNT_FLAGS) "$(@)"; \
fi;
else
sub_cmd_record_mcount = set -e ; perl $(srctree)/scripts/recordmcount.pl "$(ARCH)" \
OpenPOWER on IntegriCloud