lkml.org 
[lkml]   [2013]   [Sep]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 5/5] perf, x86: Support Haswell v4 LBR format v2
> > +	PERF_SAMPLE_BRANCH_ABORT_TX	= 1U << 7, /* transaction aborts */
> > + PERF_SAMPLE_BRANCH_IN_TX = 1U << 8, /* in transaction */
> > + PERF_SAMPLE_BRANCH_NO_TX = 1U << 9, /* not in transaction */
>
> so if you specify these flags in branch_sample_type, what information
> appears in the branch record?

This is just a filter, so when set branches that do not satisfy
the filter are not reported.

The patches to export the new fields haven't been merged yet.

>
> If you get an abort, what address appears in the record?

Abort is a jump from the abort point to the abort handler or
the HLE XACQUIRE lock instruction.

> What does it mean in regards to a branch entry to be or not be in a
> transaction?

When the branch is executed the CPU is in the transactional execution
state.

>
> If you set "in transaction" does that then only record branches that are
> in transactions?

Yes, like all the other branch filter flags.

> What happens if you set both in transaction and not in?

Then you get all branches.

>
> Is there some sort of document from intel you can link to that describes
> all of this?

http://download.intel.com/products/processor/manual/253669.pdf
Chapter 17.8

-Andi
--
ak@linux.intel.com -- Speaking for myself only


\
 
 \ /
  Last update: 2013-09-03 23:01    [W:0.243 / U:27.420 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site