diff options
author | Matt Evans <matt@ozlabs.org> | 2018-03-26 17:55:21 +0100 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2018-04-01 22:15:33 +1000 |
commit | 0e524e761fc2157f1037e0f5d616cd39e468d89c (patch) | |
tree | eb7c275ed3c776f36de13f59fb65c2d4023f83af /tools/perf/scripts/python/sched-migration.py | |
parent | 4b7e5532d2113d002aa54bfe581f35b3f1f72306 (diff) |
powerpc: Clear branch trap (MSR.BE) before delivering SIGTRAP
When using SIG_DBG_BRANCH_TRACING, MSR.BE is left enabled in the
user context when single_step_exception() prepares the SIGTRAP
delivery. The resulting branch-trap-within-the-SIGTRAP-handler
isn't healthy.
Commit 2538c2d08f46141550a1e68819efa8fe31c6e3dc broke this, by
replacing an MSR mask operation of ~(MSR_SE | MSR_BE) with a call
to clear_single_step() which only clears MSR_SE.
This patch adds a new helper, clear_br_trace(), which clears the
debug trap before invoking the signal handler. This helper is a
NOP for BookE as SIG_DBG_BRANCH_TRACING isn't supported on BookE.
Signed-off-by: Matt Evans <matt@ozlabs.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'tools/perf/scripts/python/sched-migration.py')
0 files changed, 0 insertions, 0 deletions