Steven Rostedt
ffd618fa39
ftrace/recordmcount: Make ignored mcount calls into nops at compile time
...
There are sections that are ignored by ftrace for the function tracing because
the text is in a section that can be removed without notice. The mcount calls
in these sections are ignored and ftrace never sees them. The downside of this
is that the functions in these sections still call mcount. Although the mcount
function is defined in assembly simply as a return, this added overhead is
unnecessary.
The solution is to convert these callers into nops at compile time.
A better solution is to add 'notrace' to the section markers, but as new sections
come up all the time, it would be nice that they are delt with when they
are created.
Later patches will deal with finding these sections and doing the proper solution.
Thanks to H. Peter Anvin for giving me the right nops to use for x86.
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: John Reiser <jreiser@bitwagon.com>
Link: http://lkml.kernel.org/r/20110421023738.237101176@goodmis.org
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2011-05-16 14:43:32 -04:00
..
basic
kbuild: Fix computing srcversion for modules
2011-03-13 15:59:58 -07:00
coccinelle
scripts/coccinelle: update for compatability with Coccinelle 0.2.4
2010-12-03 12:27:01 +01:00
dtc
Fix common misspellings
2011-03-31 11:26:23 -03:00
genksyms
genksyms: Regenerate lexer and parser
2011-03-17 15:13:56 +01:00
kconfig
kconfig: Avoid buffer underrun in choice input
2011-04-24 08:24:31 -07:00
ksymoops
mod
Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6
2011-03-21 15:55:26 -07:00
package
Fix common misspellings
2011-03-31 11:26:23 -03:00
rt-tester
Fix common misspellings
2011-03-31 11:26:23 -03:00
selinux
SELinux: Auto-generate security_is_socket_class
2011-03-03 15:19:43 -05:00
tracing
.gitignore
gitignore: add scripts/recordmcount
2010-11-25 15:49:50 +01:00
bin2c.c
bloat-o-meter
bloat-o-meter: include read-only data section in report
2011-03-22 17:44:17 -07:00
bootgraph.pl
checkincludes.pl
checkkconfigsymbols.sh
checkpatch.pl
Fix common misspellings
2011-03-31 11:26:23 -03:00
checkstack.pl
checksyscalls.sh
checksyscalls: Fix stand-alone usage
2010-12-20 15:40:33 +01:00
checkversion.pl
cleanfile
cleanpatch
coccicheck
Coccinelle: Add contextual message
2010-10-28 00:32:23 +02:00
config
kbuild: add numeric --set-val option to scripts/config
2010-12-15 15:44:31 +01:00
conmakehash.c
decodecode
diffconfig
export_report.pl
extract-ikconfig
scripts/extract-ikconfig: add xz compression support
2011-02-10 15:23:03 +01:00
gcc-goto.sh
jump label: Fix GCC feature check when distcc is used
2010-09-24 09:12:25 +02:00
gcc-version.sh
gcc-x86_32-has-stack-protector.sh
gcc-x86_64-has-stack-protector.sh
gen_initramfs_list.sh
Fix common misspellings
2011-03-31 11:26:23 -03:00
get_maintainer.pl
get_maintainer.pl: allow "K:" pattern tests to match non-patch text
2011-03-22 17:44:13 -07:00
gfp-translate
scripts: fix gfp-translate for recent changes to gfp.h
2010-11-25 06:50:49 +09:00
headerdep.pl
headers.sh
kbuild: introduce HDR_ARCH_LIST for headers_install_all
2010-12-14 22:16:19 +01:00
headers_check.pl
headers_check: Fix warning text
2010-12-14 17:05:08 +01:00
headers_install.pl
headers_install: check exit status of unifdef
2010-12-14 15:06:04 +01:00
kallsyms.c
scripts/kallsyms: Enable error messages while hush up unnecessary warnings
2010-09-29 16:18:27 +02:00
Kbuild.include
kernel-doc
Fix common misspellings
2011-03-31 11:26:23 -03:00
Lindent
Makefile
KBuild: silence "'scripts/unifdef' is up to date."
2011-03-17 12:29:20 +01:00
Makefile.build
kbuild: Add extra gcc checks
2011-03-09 15:35:35 +01:00
Makefile.clean
Makefile.fwinst
Makefile.headersinst
Makefile.help
Makefile.host
Makefile.lib
decompressors: add XZ decompressor module
2011-01-13 08:03:24 -08:00
Makefile.modbuiltin
Makefile.modinst
Makefile.modpost
Fix common misspellings
2011-03-31 11:26:23 -03:00
makelst
markup_oops.pl
mkcompile_h
mkmakefile
mksysmap
mkuboot.sh
mkuboot.sh: Fail if mkimage is missing
2011-01-07 14:31:01 +01:00
mkversion
module-common.lds
namespace.pl
Revert "namespace: add source file location exceptions"
2010-10-28 00:59:56 +02:00
patch-kernel
pnmtologo.c
profile2linkerlist.pl
recordmcount.c
ftrace/recordmcount: Make ignored mcount calls into nops at compile time
2011-05-16 14:43:32 -04:00
recordmcount.h
ftrace/recordmcount: Make ignored mcount calls into nops at compile time
2011-05-16 14:43:32 -04:00
recordmcount.pl
ftrace: Add .kprobe.text section to whitelist for recordmcount.c
2011-05-16 14:42:15 -04:00
setlocalversion
setlocalversion: update mercurial tag parsing
2011-01-15 00:40:44 +01:00
show_delta
tags.sh
Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6
2011-03-20 18:13:09 -07:00
unifdef.c
unifdef: update to upstream version 2.5
2011-01-22 15:50:59 +01:00
ver_linux
xz_wrap.sh
decompressors: add XZ decompressor module
2011-01-13 08:03:24 -08:00