[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20141105175703.GQ3274@tassilo.jf.intel.com>
Date: Wed, 5 Nov 2014 09:57:03 -0800
From: Andi Kleen <ak@...ux.intel.com>
To: Stephane Eranian <eranian@...gle.com>
Cc: Peter Zijlstra <peterz@...radead.org>,
Kan Liang <kan.liang@...el.com>,
LKML <linux-kernel@...r.kernel.org>,
"mingo@...hat.com" <mingo@...hat.com>,
Paul Mackerras <paulus@...ba.org>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
Jiri Olsa <jolsa@...hat.com>
Subject: Re: [PATCH V7 13/17] perf, x86: enable LBR callstack when recording
callchain
> LBR callstack fails for leaf function optimization. Where the callee does
> not return to its caller but instead to the caller's caller. That is the one
> case I know about. There are others I believe.
No it should work fine for this case. You just don't see the tail call,
but the call stack does not get out of sync, so future calls work fine.
It's the same as with frame pointers or even dwarf.
Typical cases that throw it off are throwing exceptions or user space
context switching.
One somewhat common case that used to throw it off was the
call 1f ; 1: pop %ebx
older 32bit binaries used to do to get the PIC offset. That has been
fixed in newer compilers by using an out of line function
(and also Broadwell has a workaround for this)
-Andi
--
ak@...ux.intel.com -- Speaking for myself only
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists