提交 a506bd57 编写于 作者: Z Zhen Lei 提交者: Russell King

ARM: 9064/1: hw_breakpoint: Do not directly check the event's overflow_handler hook

The commit 1879445d ("perf/core: Set event's default
::overflow_handler()") set a default event->overflow_handler in
perf_event_alloc(), and replace the check event->overflow_handler with
is_default_overflow_handler(), but one is missing.

Currently, the bp->overflow_handler can not be NULL. As a result,
enable_single_step() is always not invoked.

Comments from Zhen Lei:

 https://patchwork.kernel.org/project/linux-arm-kernel/patch/20210207105934.2001-1-thunder.leizhen@huawei.com/

Fixes: 1879445d ("perf/core: Set event's default ::overflow_handler()")
Signed-off-by: NZhen Lei <thunder.leizhen@huawei.com>
Cc: Wang Nan <wangnan0@huawei.com>
Acked-by: NWill Deacon <will@kernel.org>
Signed-off-by: NRussell King <rmk+kernel@armlinux.org.uk>
上级 7c182eba
...@@ -886,7 +886,7 @@ static void breakpoint_handler(unsigned long unknown, struct pt_regs *regs) ...@@ -886,7 +886,7 @@ static void breakpoint_handler(unsigned long unknown, struct pt_regs *regs)
info->trigger = addr; info->trigger = addr;
pr_debug("breakpoint fired: address = 0x%x\n", addr); pr_debug("breakpoint fired: address = 0x%x\n", addr);
perf_bp_event(bp, regs); perf_bp_event(bp, regs);
if (!bp->overflow_handler) if (is_default_overflow_handler(bp))
enable_single_step(bp, addr); enable_single_step(bp, addr);
goto unlock; goto unlock;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册