Re: [PATCH 1/2] powerpc/mm: Add missing tracepoint for tlbie
From: Balbir Singh
Date: Mon Mar 19 2018 - 18:40:53 EST
On Mon, 19 Mar 2018 11:32:38 +0100 (CET)
Christophe Leroy <christophe.leroy@xxxxxx> wrote:
> commit 0428491cba927 ("powerpc/mm: Trace tlbie(l) instructions")
> added tracepoints for tlbie calls, but _tlbil_va() was forgotten
>
> Fixes: 0428491cba927 ("powerpc/mm: Trace tlbie(l) instructions")
> Signed-off-by: Christophe Leroy <christophe.leroy@xxxxxx>
> ---
> arch/powerpc/mm/mmu_decl.h | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/powerpc/mm/mmu_decl.h b/arch/powerpc/mm/mmu_decl.h
> index 57fbc554c785..b9991e0c61a2 100644
> --- a/arch/powerpc/mm/mmu_decl.h
> +++ b/arch/powerpc/mm/mmu_decl.h
> @@ -21,6 +21,7 @@
> #include <linux/mm.h>
> #include <asm/tlbflush.h>
> #include <asm/mmu.h>
> +#include <asm/trace.h>
>
> #ifdef CONFIG_PPC_MMU_NOHASH
>
> @@ -56,6 +57,7 @@ static inline void _tlbil_va(unsigned long address, unsigned int pid,
> unsigned int tsize, unsigned int ind)
> {
> asm volatile ("tlbie %0; sync" : : "r" (address) : "memory");
> + trace_tlbie(pid, 0, address, 0, 0, 0, 0);
I did not really cover a whole lot of NOHASH, any idea why its
called tlbil_va and not _tlbie_va?
The first field is really the lpid and should be 0 for non-virtualized
systems. Can I recommend that we rs field for pid and the rb field for
address? so effectively something like
trace_tlbie(0, 0, address, pid, 0, 0, 0);
Balbir