powercap/rapl: track lead cpu per package
authorJacob Pan <jacob.jun.pan@linux.intel.com>
Wed, 24 Feb 2016 21:31:38 +0000 (13:31 -0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 8 Mar 2016 23:26:44 +0000 (00:26 +0100)
commit323ee64aa175a67fbbe744e809777d17e6fb42d7
treea56a447915be723943f9570681d6ca52a07149e7
parent309557f558a6f276e364b08d916c0f644b5bd2e1
powercap/rapl: track lead cpu per package

RAPL driver operates on MSRs that are under package/socket
scope instead of core scope. However, the current code does not
keep track of which CPUs are available on each package for MSR
access. Therefore it has to search for an active CPU on a given
package each time.

This patch optimizes the package level operations by tracking a
per package lead CPU during initialization and CPU hotplug. The
runtime search for active CPU is avoided.

Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/powercap/intel_rapl.c