Revision 41c066f2c4d436c535616fe182331766c57838f0 authored by Ard Biesheuvel on 11 January 2017, 14:54:53 UTC, committed by Catalin Marinas on 12 January 2017, 18:10:52 UTC
When CONFIG_RANDOMIZE_MODULE_REGION_FULL=y, the offset between loaded
modules and the core kernel may exceed 4 GB, putting symbols exported
by the core kernel out of the reach of the ordinary adrp/add instruction
pairs used to generate relative symbol references. So make the adr_l
macro emit a movz/movk sequence instead when executing in module context.

While at it, remove the pointless special case for the stack pointer.

Acked-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
1 parent 69d0123
History
File Mode Size
Makefile -rw-r--r-- 377 bytes
compat.c -rw-r--r-- 19.1 KB
compat_mq.c -rw-r--r-- 3.9 KB
ipc_sysctl.c -rw-r--r-- 5.4 KB
mq_sysctl.c -rw-r--r-- 2.9 KB
mqueue.c -rw-r--r-- 35.7 KB
msg.c -rw-r--r-- 23.5 KB
msgutil.c -rw-r--r-- 3.6 KB
namespace.c -rw-r--r-- 4.5 KB
sem.c -rw-r--r-- 54.8 KB
shm.c -rw-r--r-- 33.4 KB
syscall.c -rw-r--r-- 2.3 KB
util.c -rw-r--r-- 21.1 KB
util.h -rw-r--r-- 6.4 KB

back to top