Re: [PATCH V3 3/3] perf tools: Construct LBR call chain

From: Jiri Olsa
Date: Tue Nov 18 2014 - 02:56:01 EST


On Tue, Nov 18, 2014 at 03:13:50PM +0900, Namhyung Kim wrote:

SNIP

> >> > + * in "from" register, while the callee is stored
> >> > + * in "to" register.
> >> > + * For example, there is a call stack
> >> > + * "A"->"B"->"C"->"D".
> >> > + * The LBR registers will recorde like
> >> > + * "C"->"D", "B"->"C", "A"->"B".
> >> > + * So only the first "to" register and all "from"
> >> > + * registers are needed to construct the whole
> >> stack.
> >> > + */
> >>
> >> Andi is using some sanity checks:
> >> http://marc.info/?l=linux-kernel&m=141584447819894&w=2
> >> I guess this could be applied in here, once his patch gets in.
> >>
> >
> > Are you suggesting me to remove the comments,
> > or rebase the whole patch to Andi's patch once it's merged?
> >
> > The branch history in Andi's patch is different as the call stack,
> > although they are both from LBR.
> > Andi's branch history recording branch records for
> > taken branches, interrupts, and exceptions.
> > While the LBR call stack records for the call stack.
>
> Right. And branch history can overlap with normal callchains so
> additional check in there is to remove duplication. While LBR call
> stack is separated to user only so there should be no overlap.

hum, it seemed to me like the remove_loops function could be used
for this one as well.. but anyway I meant that this can be introduced
later after Andi's change gets in

thanks,
jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/