Andy Honig
0f55159d09
kallsyms: fix absolute addresses for kASLR
...
Currently symbols that are absolute addresses are incorrectly displayed
in /proc/kallsyms if the kernel is loaded with kASLR.
The problem was that the scripts/kallsyms.c file which generates the
array of symbol names and addresses uses an relocatable value for all
symbols, even absolute symbols. This patch fixes that.
Several kallsyms output in different boot states for comparison:
$ egrep '_(stext|_per_cpu_(start|end))' /root/kallsyms.nokaslr
0000000000000000 D __per_cpu_start
0000000000014280 D __per_cpu_end
ffffffff810001c8 T _stext
$ egrep '_(stext|_per_cpu_(start|end))' /root/kallsyms.kaslr1
000000001f200000 D __per_cpu_start
000000001f214280 D __per_cpu_end
ffffffffa02001c8 T _stext
$ egrep '_(stext|_per_cpu_(start|end))' /root/kallsyms.kaslr2
000000000d400000 D __per_cpu_start
000000000d414280 D __per_cpu_end
ffffffff8e4001c8 T _stext
$ egrep '_(stext|_per_cpu_(start|end))' /root/kallsyms.kaslr-fixed
0000000000000000 D __per_cpu_start
0000000000014280 D __per_cpu_end
ffffffffadc001c8 T _stext
Signed-off-by: Andy Honig <ahonig@google.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Cc: Michal Marek <mmarek@suse.cz>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2014-03-04 07:55:48 -08:00
..
basic
kbuild: fixdep: support concatenated dep files
2013-04-05 12:22:58 -06:00
coccinelle
scripts: Coccinelle script for pm_runtime_* return checks with IS_ERR_VALUE
2014-01-03 14:39:35 +01:00
dtc
dtc: ensure #line directives don't consume data from the next line
2013-06-13 22:12:15 +01:00
genksyms
genksyms: pass symbol-prefix instead of arch
2013-03-20 11:27:27 +10:30
kconfig
localmodconfig: Add config depends by default settings
2013-12-20 17:02:44 -05:00
ksymoops
mod
Modpost: fixed USB alias generation for ranges including 0x9 and 0xA
2014-02-07 11:26:35 -08:00
package
deb-pkg: Fix building for MIPS big-endian or ARM OABI
2014-01-03 17:28:23 +01:00
rt-tester
selinux
tracing
.gitignore
X.509: Add simple ASN.1 grammar compiler
2012-10-08 13:50:19 +10:30
analyze_suspend.py
PM / tools: new tool for suspend/resume performance optimization
2014-01-17 01:47:26 +01:00
asn1_compiler.c
X.509: remove possible code fragility: enumeration values not handled
2013-09-25 17:17:01 +01:00
bin2c.c
bloat-o-meter
scripts/bloat-o-meter: use .startswith rather than fragile slicing
2013-11-07 10:47:13 +01:00
bootgraph.pl
checkincludes.pl
checkkconfigsymbols.sh
scripts/checkkconfigsymbols.sh: replace echo -e with printf
2013-08-28 17:00:47 +02:00
checkpatch.pl
checkpatch: fix detection of git repository
2014-02-10 16:01:40 -08:00
checkstack.pl
scripts/checkstack.pl: Add metag support
2013-03-02 20:09:55 +00:00
checksyscalls.sh
checkversion.pl
cleanfile
cleanpatch
coccicheck
Coccinelle: Update information about the minimal version required
2013-07-03 22:58:20 +02:00
config
scripts/config: fix variable substitution command
2013-09-13 13:06:59 +02:00
conmakehash.c
decodecode
scripts/decodecode: make faulting insn ptr more robust
2013-04-29 15:54:27 -07:00
depmod.sh
depmod: pass -P $CONFIG_SYMBOL_PREFIX
2013-02-22 11:52:31 +01:00
diffconfig
diffconfig: Update script to support python versions 2.5 through 3.3
2013-09-01 21:24:51 +02:00
docproc.c
kernel-doc: improve "no structured comments found" error
2013-11-13 12:09:32 +09:00
export_report.pl
extract-ikconfig
extract-vmlinux
gcc-goto.sh
arm64, jump label: detect %c support for ARM64
2014-01-08 15:21:29 +00:00
gcc-version.sh
gcc-x86_32-has-stack-protector.sh
gcc-x86_64-has-stack-protector.sh
gen_initramfs_list.sh
scripts/gen_initramfs_list.sh: fix flags for initramfs LZ4 compression
2014-03-04 07:55:48 -08:00
get_maintainer.pl
get_maintainer: fix detection of git repository
2014-02-10 16:01:40 -08:00
gfp-translate
headerdep.pl
headers.sh
headers_check.pl
headers_check: special case seqbuf_dump()
2014-01-23 16:36:55 -08:00
headers_install.sh
kbuild: fix make headers_install when path is too long
2013-05-17 22:10:35 +02:00
kallsyms.c
kallsyms: fix absolute addresses for kASLR
2014-03-04 07:55:48 -08:00
Kbuild.include
kbuild: fix ld-option function
2013-04-08 11:47:41 +02:00
kernel-doc
Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild
2013-11-15 14:09:15 -08:00
Lindent
link-vmlinux.sh
scripts/link-vmlinux.sh: only filter kernel symbols for arm
2013-12-10 16:49:19 +10:30
Makefile
X.509: Add simple ASN.1 grammar compiler
2012-10-08 13:50:19 +10:30
Makefile.asm-generic
uapi: Allow automatic generation of uapi/asm/ header files
2012-10-17 12:25:44 +01:00
Makefile.build
genksyms: pass symbol-prefix instead of arch
2013-03-20 11:27:27 +10:30
Makefile.clean
Makefile.fwinst
kbuild: Fix accidental revert in commit fe04ddf
2012-10-15 13:01:05 -07:00
Makefile.headersinst
kbuild: fix make headers_install when path is too long
2013-05-17 22:10:35 +02:00
Makefile.help
Makefile.host
Makefile.lib
of: Move testcase FDT data into drivers/of
2014-02-20 11:52:08 +00:00
Makefile.modbuiltin
Makefile.modinst
modules: don't break modules_install on external modules with no key.
2012-11-06 11:52:24 +10:30
Makefile.modpost
modpost: Optionally ignore secondary errors seen if a single module build fails
2013-09-23 15:45:03 +09:30
Makefile.modsign
MODSIGN: Add modules_sign make target
2012-12-14 13:05:28 +10:30
makelst
markup_oops.pl
mkcompile_h
mkmakefile
mksysmap
mkuboot.sh
mkversion
module-common.lds
namespace.pl
patch-kernel
pnmtologo.c
scripts/pnmtologo: fix for plain PBM
2012-11-20 11:58:03 +01:00
profile2linkerlist.pl
recordmcount.c
metag: ftrace support
2013-03-02 20:09:55 +00:00
recordmcount.h
recordmcount.pl
ftrace: default to tilegx if ARCH=tile is specified
2013-12-05 15:59:26 -05:00
setlocalversion
Fix detectition of kernel git repository in setlocalversion script [take #2 ]
2014-01-03 14:48:42 +01:00
show_delta
show_delta: Update script to support python versions 2.5 through 3.3
2013-10-23 17:13:42 +02:00
sign-file
MODSIGN: Add -s <signature> option to sign-file
2013-01-25 16:55:36 +10:30
sortextable.c
microblaze: extable: sort the exception table at build time
2014-01-23 16:36:50 -08:00
sortextable.h
scripts/sortextable: support objects with more than 64K sections.
2013-11-13 12:09:00 +09:00
tags.sh
scripts/tags.sh: remove obsolete __devinit[const|data]
2013-11-08 10:57:20 +01:00
unifdef.c
ver_linux
xz_wrap.sh