On Tue, Sep 03, 2013 at 05:14:51PM -0400, Vince Weaver wrote: > On Tue, 3 Sep 2013, Andi Kleen wrote: > > > > > + 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. > > Is the implementation a direct mapping to the LBR documentation or has it > been generic so non-Intel architectures can use it?
It's not a direct mapping (no_tx doesn't exist in the hardware) If other architectures have similar capabilities they can likely use it. > > > The patches to export the new fields haven't been merged yet. > > What does this mean? The above values are exported as part of > include/uapi/linux/perf_event.h > Do they not work yet? You can filter on the fields, but you can't see them outside the kernel driver yet. The patch to see them is still pending. > > > > What happens if you set both in transaction and not in? > > > > Then you get all branches. > > so what happens if you set neither "PERF_SAMPLE_BRANCH_IN_TX" nor > "PERF_SAMPLE_BRANCH_NO_TX"? Logically you'd get no branches at all, > but that can't be true as all code prior to 3.11 didn't set those values. Then you get all branches too (that's how all the other filters work too) -Andi -- [email protected] -- Speaking for myself only. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

