1. 15 6月, 2016 2 次提交
  2. 10 6月, 2016 1 次提交
  3. 08 6月, 2016 3 次提交
  4. 28 4月, 2016 1 次提交
  5. 27 4月, 2016 1 次提交
  6. 05 4月, 2016 1 次提交
  7. 09 3月, 2016 3 次提交
  8. 02 1月, 2016 1 次提交
  9. 12 12月, 2015 1 次提交
  10. 09 12月, 2015 1 次提交
  11. 17 10月, 2015 1 次提交
  12. 29 8月, 2015 1 次提交
  13. 01 8月, 2015 2 次提交
  14. 21 5月, 2015 1 次提交
  15. 05 5月, 2015 1 次提交
  16. 16 4月, 2015 1 次提交
  17. 11 4月, 2015 2 次提交
  18. 14 3月, 2015 1 次提交
    • J
      powercap / RAPL: handle domains with different energy units · d474a4d3
      Jacob Pan 提交于
      The current driver assumes all RAPL domains within a CPU package
      have the same energy unit. This is no longer true for HSW server
      CPUs since DRAM domain has is own fixed energy unit which can be
      different than the package energy unit enumerated by package
      power MSR. In fact, the default HSW EP package power unit is 61uJ
      whereas DRAM domain unit is 15.3uJ. The result is that DRAM power
      consumption is counted 4x more than real power reported by energy
      counters, similarly for max_energy_range_uj of DRAM domain.
      
      This patch adds domain specific energy unit per cpu type, it allows
      domain energy unit to override package energy unit if non zero.
      
      Please see this document for details.
      "Intel Xeon Processor E5-1600 and E5-2600 v3 Product Families, Volume 2 of 2.
       Datasheet, September 2014, Reference Number: 330784-001 "
      Signed-off-by: NJacob Pan <jacob.jun.pan@linux.intel.com>
      Cc: 3.10+ <stable@vger.kernel.org> # 3.10+
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      d474a4d3
  19. 17 12月, 2014 1 次提交
  20. 12 11月, 2014 3 次提交
  21. 03 9月, 2014 2 次提交
  22. 01 5月, 2014 2 次提交
  23. 20 3月, 2014 1 次提交
    • S
      powercap, intel-rapl: Fix CPU hotplug callback registration · 009f225e
      Srivatsa S. Bhat 提交于
      Subsystems that want to register CPU hotplug callbacks, as well as perform
      initialization for the CPUs that are already online, often do it as shown
      below:
      
      	get_online_cpus();
      
      	for_each_online_cpu(cpu)
      		init_cpu(cpu);
      
      	register_cpu_notifier(&foobar_cpu_notifier);
      
      	put_online_cpus();
      
      This is wrong, since it is prone to ABBA deadlocks involving the
      cpu_add_remove_lock and the cpu_hotplug.lock (when running concurrently
      with CPU hotplug operations).
      
      Instead, the correct and race-free way of performing the callback
      registration is:
      
      	cpu_notifier_register_begin();
      
      	for_each_online_cpu(cpu)
      		init_cpu(cpu);
      
      	/* Note the use of the double underscored version of the API */
      	__register_cpu_notifier(&foobar_cpu_notifier);
      
      	cpu_notifier_register_done();
      
      Fix the intel-rapl code in the powercap driver by using this latter form
      of callback registration. But retain the calls to get/put_online_cpus(),
      since they also protect the function rapl_cleanup_data(). By nesting
      get/put_online_cpus() *inside* cpu_notifier_register_begin/done(), we avoid
      the ABBA deadlock possibility mentioned above.
      
      Cc: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Tested-by: NJacob Pan <jacob.jun.pan@linux.intel.com>
      Signed-off-by: NSrivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      009f225e
  24. 14 2月, 2014 2 次提交
  25. 22 12月, 2013 1 次提交
  26. 18 10月, 2013 1 次提交