arm64: ptrace: Fix missing return in hw breakpoint code
authorKeno Fischer <keno@juliacomputing.com>
Tue, 2 Feb 2021 00:21:09 +0000 (19:21 -0500)
committerWill Deacon <will@kernel.org>
Tue, 2 Feb 2021 21:07:56 +0000 (21:07 +0000)
When delivering a hw-breakpoint SIGTRAP to a compat task via ptrace, the
lack of a 'return' statement means we fallthrough to the native case,
which differs in its handling of 'si_errno'.

Although this looks to be harmless because the subsequent signal is
effectively ignored, it's confusing and unintentional, so add the
missing 'return'.

Signed-off-by: Keno Fischer <keno@juliacomputing.com>
Link: https://lore.kernel.org/r/20210202002109.GA624440@juliacomputing.com
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/kernel/ptrace.c

index 8ac487c..3d5c8af 100644 (file)
@@ -194,6 +194,7 @@ static void ptrace_hbptriggered(struct perf_event *bp,
                }
                arm64_force_sig_ptrace_errno_trap(si_errno, bkpt->trigger,
                                                  desc);
+               return;
        }
 #endif
        arm64_force_sig_fault(SIGTRAP, TRAP_HWBKPT, bkpt->trigger, desc);