Re: [PATCH 14/34] perf, x86: Avoid checkpointed counters causing excessive TSX aborts

From: Andi Kleen
Date: Tue Oct 23 2012 - 09:22:31 EST


On Tue, Oct 23, 2012 at 03:03:43PM +0200, Peter Zijlstra wrote:
> On Thu, 2012-10-18 at 16:19 -0700, Andi Kleen wrote:
> > @@ -1079,6 +1079,17 @@ static void intel_pmu_enable_event(struct perf_event *event)
> > int intel_pmu_save_and_restart(struct perf_event *event)
> > {
> > x86_perf_event_update(event);
> > + /*
> > + * For a checkpointed counter always reset back to 0. This
> > + * avoids a situation where the counter overflows, aborts the
> > + * transaction and is then set back to shortly before the
> > + * overflow, and overflows and aborts again.
> > + */
> > + if (event->hw.config & HSW_INTX_CHECKPOINTED) {
>
> Would an unlikely() make sense there? Most events won't have this set.

Ok.

-Andi
--
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/