Re: [PATCH v6 17/22] arm64: mm: Add page fault trace points
From: Steven Rostedt <rostedt@goodmis.org>
Date: 2025-05-07 21:23:27
Also in:
linux-arm-kernel, lkml
From: Steven Rostedt <rostedt@goodmis.org>
Date: 2025-05-07 21:23:27
Also in:
linux-arm-kernel, lkml
Can I get an Acked-by from the ARM64 maintainers? Thanks, -- Steve On Wed, 30 Apr 2025 13:02:32 +0200 Nam Cao [off-list ref] wrote:
Add page fault trace points, which are useful to implement RV monitor which watches page faults. Signed-off-by: Nam Cao <redacted> --- Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will@kernel.org> Cc: linux-arm-kernel@lists.infradead.org --- arch/arm64/mm/fault.c | 8 ++++++++ 1 file changed, 8 insertions(+)diff --git a/arch/arm64/mm/fault.c b/arch/arm64/mm/fault.c index ef63651099a9..e3f096b0dffd 100644 --- a/arch/arm64/mm/fault.c +++ b/arch/arm64/mm/fault.c@@ -44,6 +44,9 @@ #include <asm/tlbflush.h> #include <asm/traps.h> +#define CREATE_TRACE_POINTS +#include <trace/events/exceptions.h> + struct fault_info { int (*fn)(unsigned long far, unsigned long esr, struct pt_regs *regs);@@ -559,6 +562,11 @@ static int __kprobes do_page_fault(unsigned long far, unsigned long esr, if (kprobe_page_fault(regs, esr)) return 0; + if (user_mode(regs)) + trace_page_fault_user(addr, regs, esr); + else + trace_page_fault_kernel(addr, regs, esr); + /* * If we're in an interrupt or have no user context, we must not take * the fault.