Message ID | 20130620030713.GA27428@mozilla.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
* Jed Davis <jld@mozilla.com> wrote: > With this change, we no longer lose the innermost entry in the user-mode > part of the call chain. See also the x86 port, which includes the ip, > and the corresponding change in arch/arm. > > Signed-off-by: Jed Davis <jld@mozilla.com> > --- > arch/arm64/kernel/perf_event.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/arm64/kernel/perf_event.c b/arch/arm64/kernel/perf_event.c > index 1e49e5eb..9ba33c4 100644 > --- a/arch/arm64/kernel/perf_event.c > +++ b/arch/arm64/kernel/perf_event.c > @@ -1336,6 +1336,7 @@ void perf_callchain_user(struct perf_callchain_entry *entry, > return; > } > > + perf_callchain_store(entry, regs->pc); > tail = (struct frame_tail __user *)regs->regs[29]; > > while (entry->nr < PERF_MAX_STACK_DEPTH && Acked-by: Ingo Molnar <mingo@kernel.org> I suspect this goes to v3.10 via the ARM64 tree? Thanks, Ingo
On Thu, Jun 20, 2013 at 09:33:28AM +0100, Ingo Molnar wrote: > > * Jed Davis <jld@mozilla.com> wrote: > > > With this change, we no longer lose the innermost entry in the user-mode > > part of the call chain. See also the x86 port, which includes the ip, > > and the corresponding change in arch/arm. > > > > Signed-off-by: Jed Davis <jld@mozilla.com> > > --- > > arch/arm64/kernel/perf_event.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/arch/arm64/kernel/perf_event.c b/arch/arm64/kernel/perf_event.c > > index 1e49e5eb..9ba33c4 100644 > > --- a/arch/arm64/kernel/perf_event.c > > +++ b/arch/arm64/kernel/perf_event.c > > @@ -1336,6 +1336,7 @@ void perf_callchain_user(struct perf_callchain_entry *entry, > > return; > > } > > > > + perf_callchain_store(entry, regs->pc); > > tail = (struct frame_tail __user *)regs->regs[29]; > > > > while (entry->nr < PERF_MAX_STACK_DEPTH && > > Acked-by: Ingo Molnar <mingo@kernel.org> > > I suspect this goes to v3.10 via the ARM64 tree? Yup, we'll take this via the arm64 tree, thanks. Catalin, you can add: Acked-by: Will Deacon <will.deacon@arm.com> to this. Cheers, Will
diff --git a/arch/arm64/kernel/perf_event.c b/arch/arm64/kernel/perf_event.c index 1e49e5eb..9ba33c4 100644 --- a/arch/arm64/kernel/perf_event.c +++ b/arch/arm64/kernel/perf_event.c @@ -1336,6 +1336,7 @@ void perf_callchain_user(struct perf_callchain_entry *entry, return; } + perf_callchain_store(entry, regs->pc); tail = (struct frame_tail __user *)regs->regs[29]; while (entry->nr < PERF_MAX_STACK_DEPTH &&
With this change, we no longer lose the innermost entry in the user-mode part of the call chain. See also the x86 port, which includes the ip, and the corresponding change in arch/arm. Signed-off-by: Jed Davis <jld@mozilla.com> --- arch/arm64/kernel/perf_event.c | 1 + 1 file changed, 1 insertion(+)