RE: [PATCH 1/1] perf/x86/intel/uncore: Add support for Intel SKL client uncore

From: Thomas Gleixner
Date: Wed Apr 20 2016 - 10:56:25 EST


On Wed, 20 Apr 2016, Liang, Kan wrote:
> > The stop of the box1 events disables the whole machinery on that node and
> > therefor the box0 event is wreckaged as well. Hmm?
> >
> Right. How about check the SKL_UNC_PERF_GLOBAL_CTL in enable_event? If it's
> cleared, we can reset it there. The drawback is that there will be an extra
> rdmsrl and a possible wrmsrl.

Well, that does not buy anything as you cannot disable the thing at all,
unless you have refcounting. And that refcounting needs to be in the 'type'
struct and that would probably be some real pain to implement.

The question is whether we need enable/disable at all. If the type is
initialized we enable it and on exit we disable it. Ditto on cpu hotplug -
which is also used for init to enable all nodes.

So if there is no drawback in letting the thing enabled if no events are
armed, then we really can do w/o the enable/disable_box callbacks.

Thanks,

tglx