Skip to content

Commit ff69279

Browse files
Ard Biesheuveltorvalds
authored andcommitted
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 <[email protected]> Suggested-by: Nicholas Piggin <[email protected]> Signed-off-by: Ard Biesheuvel <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
1 parent af3a5fe commit ff69279

File tree

1 file changed

+0
-1
lines changed

1 file changed

+0
-1
lines changed

arch/powerpc/Kconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,6 @@ config PPC
177177
select HAVE_ARCH_KGDB
178178
select HAVE_ARCH_MMAP_RND_BITS
179179
select HAVE_ARCH_MMAP_RND_COMPAT_BITS if COMPAT
180-
select HAVE_ARCH_PREL32_RELOCATIONS
181180
select HAVE_ARCH_SECCOMP_FILTER
182181
select HAVE_ARCH_TRACEHOOK
183182
select HAVE_CBPF_JIT if !PPC64

0 commit comments

Comments
 (0)