Messages in this thread | ![/](/images/icornerl.gif) | | From | Xiongfeng Wang <> | Subject | [RFC PATCH 0/3] Enable kprobe to monitor sdei event handler | Date | Fri, 12 Apr 2019 20:04:56 +0800 |
| |
When I use kprobe to monitor a sdei event handler, the CPU will hang. It's because when I probe the event handler, the instruction will be replaced with brk instruction and brk exception is unmaskable. But 'vbar_el1' contains 'tramp_vectors' in '_sdei_handler' when SDEI events interrupt userspace, so we will go to the wrong place if brk exception happens.
I notice that 'ghes_sdei_normal_callback' call several funtions that are not marked as 'nokprobe'. So I was wondering if we can enable kprobe in '_sdei_handler'.
Xiongfeng Wang (3): Revert "arm64: debug: remove unused local_dbg_{enable, disable} macros" sdei: enable dbg in '_sdei_handler' stop_machine: mask sdei before running the callback
arch/arm64/include/asm/debug-monitors.h | 1 + arch/arm64/include/asm/irqflags.h | 4 +++ arch/arm64/kernel/debug-monitors.c | 8 ++++++ arch/arm64/kernel/sdei.c | 43 ++++++++++++++++++++++++++------- kernel/stop_machine.c | 9 +++++++ 5 files changed, 56 insertions(+), 9 deletions(-)
-- 1.7.12.4
| ![\](/images/icornerr.gif) |