aboutsummaryrefslogtreecommitdiff
path: root/lib/parman.c
diff options
context:
space:
mode:
authorArd Biesheuvel2018-08-29 08:47:53 +0200
committerLinus Torvalds2018-08-29 16:12:07 -0700
commitff69279a44e9ba876466b7d3ab84d6dbd31cac92 (patch)
tree6b90dd75b639e091ae9fa5be146222132b69b50e /lib/parman.c
parentaf3a5fe4ddfe3d426eb025d4c3afd176efea658e (diff)
powerpc: disable support for relative ksymtab references
The newly added code that emits ksymtab entries as pairs of 32-bit relative references interacts poorly with the way powerpc lays out its address space: when a module exports a per-CPU variable, the primary module region covering the ksymtab entry -and thus the 32-bit relative reference- is too far away from the actual per-CPU variable's base address (to which the per-CPU offsets are applied to obtain the respective address of each CPU's copy), resulting in corruption when the module loader attempts to resolve symbol references of modules that are loaded on top and link to the exported per-CPU symbol. So let's disable this feature on powerpc. Even though it implements CONFIG_RELOCATABLE, it does not implement CONFIG_RANDOMIZE_BASE and so KASLR kernels (which are the main target of the feature) do not exist on powerpc anyway. Reported-by: Andreas Schwab <schwab@linux-m68k.org> Suggested-by: Nicholas Piggin <nicholas.piggin@gmail.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'lib/parman.c')
0 files changed, 0 insertions, 0 deletions