Re: [PATCH 1/5] perf, x86: Don't assume the alternative cycles encoding is architectural

Andi Kleen
2012-06-06T14:49:55Z

On Wed, Jun 06, 2012 at 04:42:06PM +0200, Peter Zijlstra wrote:
> On Wed, 2012-06-06 at 07:35 -0700, Andi Kleen wrote:
> > > But simply disabling it for a model isn't how you do things.
> >
> > Do you want it enabled per model? I can turn the flag around.
> > Anything else?
>
> The below is a refresh from a patch I did about a year ago when we ran
> into the SNB trainwreck. I never merged it because SNB.. but IVB seems
> to work.

Hmm, your line numbers do not fully match mine

Is this for the intel_pmu or for the core_pmu?

> + .pebs_aliases = intel_pebs_aliases_core2,

In any case since the code later does

version = eax.split.version_id;
if (version < 2)
x86_pmu = core_pmu;
else
x86_pmu = intel_pmu;

so core_pmu would be active even without model check, which would
be still wrong.

So your patch would fix the problem iff you only fill in the pebs_aliases
in the model number switch for known Core model numbers.

If you fix that it would be a valid replacement for mine I believe.

-Andi