linux_dsm_epyc7002/arch/arm64/kernel/probes
James Morse f2b3d8566d arm64: kprobe: Always blacklist the KVM world-switch code
On systems with VHE the kernel and KVM's world-switch code run at the
same exception level. Code that is only used on a VHE system does not
need to be annotated as __hyp_text as it can reside anywhere in the
 kernel text.

__hyp_text was also used to prevent kprobes from patching breakpoint
instructions into this region, as this code runs at a different
exception level. While this is no longer true with VHE, KVM still
switches VBAR_EL1, meaning a kprobe's breakpoint executed in the
world-switch code will cause a hyp-panic.

Move the __hyp_text check in the kprobes blacklist so it applies on
VHE systems too, to cover the common code and guest enter/exit
assembly.

Fixes: 888b3c8720 ("arm64: Treat all entry code as non-kprobe-able")
Reviewed-by: Christoffer Dall <christoffer.dall@arm.com>
Signed-off-by: James Morse <james.morse@arm.com>
Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2019-02-01 14:09:50 +00:00
..
decode-insn.c arm64: fix error: conflicting types for 'kprobe_fault_handler' 2016-11-07 18:15:21 +00:00
decode-insn.h kprobes: move kprobe declarations to asm-generic/kprobes.h 2017-02-27 18:43:45 -08:00
kprobes_trampoline.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kprobes.c arm64: kprobe: Always blacklist the KVM world-switch code 2019-02-01 14:09:50 +00:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
simulate-insn.c arm64/kprobes: consistently handle MRS/MSR with XZR 2017-02-15 12:20:29 +00:00
simulate-insn.h arm64: kprobes instruction simulation support 2016-07-19 15:03:21 +01:00
uprobes.c arm64: introduce separated bits for mm_context_t flags 2017-08-22 18:13:04 +01:00