Re: [PATCH v2] riscv: add tracepoints for page fault

From: Matthew Wilcox
Date: Wed Jul 17 2024 - 10:55:35 EST


On Wed, Jul 17, 2024 at 08:27:19AM +0000, Zhu Hengbo wrote:
> + TP_STRUCT__entry(
> + __field(unsigned long, address)
> + __field(unsigned long, epc)
> + __field(unsigned long, cause)
> + ),
> +
> + TP_fast_assign(
> + __entry->address = regs->badaddr;
> + __entry->epc = regs->epc;
> + __entry->cause = regs->cause;
> + ),
> +
> + TP_printk("user page fault, address=%ps epc=%ps cause=0x%lx",
> + (void *)__entry->address, (void *)__entry->epc,
> + __entry->cause)

What is "epc"? You've made this gratuitously different from x86.
Never do that. Always copy what somebody else has done unless you have
a good reason to be different.