diff options
author | Ard Biesheuvel <ard.biesheuvel@linaro.org> | 2017-06-06 17:00:21 +0000 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2017-06-07 11:50:34 +0100 |
commit | f8af0b364e249eef0c71200826563947cd74267e (patch) | |
tree | 65449d594027a0f8ab6d019c935d97c454a7da1f /arch/arm64/kernel/module.c | |
parent | dbbb08f500d6146398b794fdc68a8e811366b451 (diff) | |
download | linux-f8af0b364e249eef0c71200826563947cd74267e.tar.gz |
arm64: ftrace: don't validate branch via PLT in ftrace_make_nop()
When turning branch instructions into NOPs, we attempt to validate the
action by comparing the old value at the call site with the opcode of
a direct relative branch instruction pointing at the old target.
However, these call sites are statically initialized to call _mcount(),
and may be redirected via a PLT entry if the module is loaded far away
from the kernel text, leading to false negatives and spurious errors.
So skip the validation if CONFIG_ARM64_MODULE_PLTS is configured.
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm64/kernel/module.c')
0 files changed, 0 insertions, 0 deletions