]> git.itanic.dy.fi Git - linux-stable/commitdiff
parisc: Handle kgdb breakpoints only in kernel context
authorHelge Deller <deller@gmx.de>
Wed, 24 May 2023 12:34:58 +0000 (14:34 +0200)
committerHelge Deller <deller@gmx.de>
Wed, 24 May 2023 13:46:12 +0000 (15:46 +0200)
The kernel kgdb break instructions should only be handled when running
in kernel context.

Cc: <stable@vger.kernel.org> # v5.4+
Signed-off-by: Helge Deller <deller@gmx.de>
arch/parisc/kernel/traps.c

index 4d5f7b167a6544a2d8b6ac2172a3399bb828fa5e..304eebd1c83e7d802fd9b1d726d479fbaeefa175 100644 (file)
@@ -306,8 +306,8 @@ static void handle_break(struct pt_regs *regs)
 #endif
 
 #ifdef CONFIG_KGDB
-       if (unlikely(iir == PARISC_KGDB_COMPILED_BREAK_INSN ||
-               iir == PARISC_KGDB_BREAK_INSN)) {
+       if (unlikely((iir == PARISC_KGDB_COMPILED_BREAK_INSN ||
+               iir == PARISC_KGDB_BREAK_INSN)) && !user_mode(regs)) {
                kgdb_handle_exception(9, SIGTRAP, 0, regs);
                return;
        }