Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 22f6b899 authored by Vineet Gupta's avatar Vineet Gupta
Browse files

ARC: perf: add user space attribution in callchains



The actual user space unwinding is more involved, so simply capture the
user space PC

Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
parent 389e3160
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -54,6 +54,16 @@ perf_callchain_kernel(struct perf_callchain_entry *entry, struct pt_regs *regs)
	arc_unwind_core(NULL, regs, callchain_trace, &ctrl);
}

void
perf_callchain_user(struct perf_callchain_entry *entry, struct pt_regs *regs)
{
	/*
	 * User stack can't be unwound trivially with kernel dwarf unwinder
	 * So for now just record the user PC
	 */
	perf_callchain_store(entry, instruction_pointer(regs));
}

static struct arc_pmu *arc_pmu;

/* read counter #idx; note that counter# != event# on ARC! */