[RFC V2 0/3] arm64/hw_breakpoint: Enable FEAT_Debugv8p9
From: Anshuman Khandual <hidden>
Date: 2024-06-20 09:26:22
Also in:
kvmarm, lkml
This series enables FEAT_Debugv8p9 thus extending breakpoint and watchpoint support upto 64. This has been lightly tested and still work is in progress but would like to get some early feedback on the approach. Possible impact of context switches while tracing kernel addresses needs to be evaluated regarding MDSELR_EL1 access. This series is based on v6.10-rc4 after applying the MDSELR_EL1 KVM series. https://lore.kernel.org/all/20240620065807.151540-1-anshuman.khandual@arm.com/ (local) Cc: Jonathan Corbet <corbet@lwn.net> Cc: Marc Zyngier <maz@kernel.org> Cc: Oliver Upton <redacted> Cc: James Morse <james.morse@arm.com> Cc: Suzuki K Poulose <suzuki.poulose@arm.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will@kernel.org> Cc: Mark Brown <broonie@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: linux-arm-kernel@lists.infradead.org Cc: kvmarm@lists.linux.dev Cc: linux-kernel@vger.kernel.org Changes in RFC V2: - This series has been split from RFC V1 dealing only with arm64 breakpoints - Restored back DBG_MDSCR_MASK definition (unrelated change) - Added preempt_disable()/enable() blocks between selecting banks and registers Changes in RFC: https://lore.kernel.org/all/20240405080008.1225223-1-anshuman.khandual@arm.com/ (local) Anshuman Khandual (3): arm64/cpufeature: Add field details for ID_AA64DFR1_EL1 register arm64/boot: Enable EL2 requirements for FEAT_Debugv8p9 arm64/hw_breakpoint: Enable FEAT_Debugv8p9 Documentation/arch/arm64/booting.rst | 19 ++++++++++ arch/arm64/include/asm/debug-monitors.h | 1 + arch/arm64/include/asm/el2_setup.h | 27 +++++++++++++ arch/arm64/include/asm/hw_breakpoint.h | 50 ++++++++++++++++++++----- arch/arm64/include/asm/kvm_arm.h | 1 + arch/arm64/kernel/cpufeature.c | 21 ++++++++--- arch/arm64/kernel/debug-monitors.c | 16 ++++++-- arch/arm64/kernel/hw_breakpoint.c | 33 ++++++++++++++++ 8 files changed, 149 insertions(+), 19 deletions(-) -- 2.25.1