[PATCH v6 0/2] arm64: Fix pending single-step debugging issues

Sumit Garg sumit.garg at linaro.org
Tue Feb 21 23:06:57 PST 2023


Hi Will,

On Thu, 2 Feb 2023 at 13:02, Sumit Garg <sumit.garg at linaro.org> wrote:
>
> This patch-set reworks pending fixes from Wei's series [1] to make
> single-step debugging via kgdb/kdb on arm64 work as expected. There was
> a prior discussion on ML [2] regarding if we should keep the interrupts
> enabled during single-stepping. So patch #1 follows suggestion from Will
> [3] to not disable interrupts during single stepping but rather skip
> single stepping within interrupt handler.
>
> [1] https://lore.kernel.org/all/20200509214159.19680-1-liwei391@huawei.com/
> [2] https://lore.kernel.org/all/CAD=FV=Voyfq3Qz0T3RY+aYWYJ0utdH=P_AweB=13rcV8GDBeyQ@mail.gmail.com/
> [3] https://lore.kernel.org/all/20200626095551.GA9312@willie-the-truck/
>
> Changes in v6:
> - Fix incorrect rescheduling check introduced by rework for v5.
> - Patch #2: s/kernel_regs_reset_single_step/kernel_rewind_single_step/
> - Collected Daniel's tags.
>

Would you be happy to pick up patch #2 independently? Also, it would
be great if you can provide some guidance regarding patch #1 which
certainly fixes single stepping on arm64 but I am not sure how it
would have side-effects.

-Sumit

> Changes in v5:
> - Incorporated misc. comments from Mark.
>
> Changes in v4:
> - Rebased to the tip of mainline.
> - Picked up Doug's Tested-by tag.
>
> Changes in v3:
> - Reword commit descriptions as per Daniel's suggestions.
>
> Changes in v2:
> - Replace patch #1 to rather follow Will's suggestion.
>
> Sumit Garg (2):
>   arm64: entry: Skip single stepping into interrupt handlers
>   arm64: kgdb: Set PSTATE.SS to 1 to re-enable single-step
>
>  arch/arm64/include/asm/debug-monitors.h |  1 +
>  arch/arm64/kernel/debug-monitors.c      |  5 +++++
>  arch/arm64/kernel/entry-common.c        | 22 ++++++++++++++++++++--
>  arch/arm64/kernel/kgdb.c                |  2 ++
>  4 files changed, 28 insertions(+), 2 deletions(-)
>
> --
> 2.34.1
>



More information about the linux-arm-kernel mailing list