diff options
author | Nicholas Piggin <npiggin@gmail.com> | 2022-10-07 00:04:11 +1000 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2022-10-18 22:46:19 +1100 |
commit | dc398a084d459f065658855454e09f2778f8c5cc (patch) | |
tree | dba45be1f6d86775998339cbebcdc038f931a203 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | a073672eb09670540e95a2a4aa1c46f5da74159f (diff) |
powerpc/64s/interrupt: Perf NMI should not take normal exit path
NMI interrupts should exit with EXCEPTION_RESTORE_REGS not with
interrupt_return_srr, which is what the perf NMI handler currently does.
This breaks if a PMI hits after interrupt_exit_user_prepare_main() has
switched the context tracking to user mode, then the CT_WARN_ON() in
interrupt_exit_kernel_prepare() fires because it returns to kernel with
context set to user.
This could possibly be solved by soft-disabling PMIs in the exit path,
but that reduces our ability to profile that code. The warning could be
removed, but it's potentially useful.
All other NMIs and soft-NMIs return using EXCEPTION_RESTORE_REGS, so
this makes perf interrupts consistent with that and seems like the best
fix.
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
[mpe: Squash in fixups from Nick]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20221006140413.126443-3-npiggin@gmail.com
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions