[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1555070699-3685-1-git-send-email-wangxiongfeng2@huawei.com>
Date: Fri, 12 Apr 2019 20:04:56 +0800
From: Xiongfeng Wang <wangxiongfeng2@...wei.com>
To: <wangxiongfeng2@...wei.com>, <huawei.libin@...wei.com>,
<james.morse@....com>, <catalin.marinas@....com>,
<will.deacon@....com>
CC: <linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>
Subject: [RFC PATCH 0/3] Enable kprobe to monitor sdei event handler
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
Powered by blists - more mailing lists