Re: [PATCH] perf/x86: check ucode before disabling PEBS on SandyBridge

Peter Zijlstra
2012-06-12T17:41:04Z

On Tue, 2012-06-12 at 19:35 +0200, Borislav Petkov wrote:
> On Tue, Jun 12, 2012 at 07:26:36PM +0200, Peter Zijlstra wrote:
> > You want, yes, but afaict the stuff in
> > arch/x86/kernel/microcode_core.c:reload_store means you can force a
> > single cpu to update while leaving the others alone.
>
> Btw, this doesn't work on AMD... for a reason.

How so? afaict there's nothing stopping it from working.

> > Afaict this is not a sane thing to do, but quite possible.
>
> I'd guess this is still there to support mixed ucode revisions for some
> oldish platforms. But if SB doesn't support mixed ucode revisions,
> you don't want to use the reload_store interface anyway for reasons
> described above. Maybe this interface should be behind a family, model
> check or so, so that users don't shoot themselves in the foot but it is
> root-only anyway.

Ideally this interface should be removed, but yeah. As long as its there
you have to check all CPUs, because officially supported or not simply
doesn't matter, the user can do it.

Also, you can create a pebs event while updating micro-code. There's a
race window there if you don't check all cpus.