1. 14 1月, 2011 26 次提交
  2. 13 1月, 2011 8 次提交
  3. 12 1月, 2011 6 次提交
    • L
      eca0bdd3
    • L
      tools: create power/x86/x86_energy_perf_policy · d5532ee7
      Len Brown 提交于
      MSR_IA32_ENERGY_PERF_BIAS first became available on Westmere Xeon.
      It is implemented in all Sandy Bridge processors -- mobile, desktop and server.
      It is expected to become increasingly important in subsequent generations.
      
      x86_energy_perf_policy is a user-space utility to set the
      hardware energy vs performance policy hint in the processor.
      Most systems would benefit from "x86_energy_perf_policy normal"
      at system startup, as the hardware default is maximum performance
      at the expense of energy efficiency.
      
      See x86_energy_perf_policy.8 man page for more information.
      
      Background:
      
      Linux-2.6.36 added "epb" to /proc/cpuinfo to indicate
      if an x86 processor supports MSR_IA32_ENERGY_PERF_BIAS,
      without actually modifying the MSR.
      
      In March, 2010, Venkatesh Pallipadi proposed a small driver
      that programmed MSR_IA32_ENERGY_PERF_BIAS, based on
      the cpufreq governor in use.  It also offered
      a boot-time cmdline option to override.
      http://lkml.org/lkml/2010/3/4/457
      But hiding the hardware policy behind the
      governor choice was deemed "kinda icky".
      
      In June, 2010, I proposed a generic user/kernel API to
      generalize the power/performance policy trade-off.
      "RFC: /sys/power/policy_preference"
      http://lkml.org/lkml/2010/6/16/399
      That is my preference for implementing this capability,
      but I received no support on the list.
      
      So in September, 2010, I sent x86_energy_perf_policy.c to LKML,
      a user-space utility that scribbles directly to the MSR.
      http://lkml.org/lkml/2010/9/28/246
      
      Here is that same utility, after responding to some review feedback,
      to live in tools/power/, where it is easily found.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      d5532ee7
    • L
      tools: create power/x86/turbostat · 103a8fea
      Len Brown 提交于
      turbostat is a Linux tool to observe proper operation
      of Intel(R) Turbo Boost Technology.
      
      turbostat displays the actual processor frequency
      on x86 processors that include APERF and MPERF MSRs.
      
      Note that turbostat is of limited utility on Linux
      kernels 2.6.29 and older, as acpi_cpufreq cleared
      APERF/MPERF up through that release.
      
      On Intel Core i3/i5/i7 (Nehalem) and newer processors,
      turbostat also displays residency in idle power saving states,
      which are necessary for diagnosing any cpuidle issues
      that may have an effect on turbo-mode.
      
      See the turbostat.8 man page for example usage.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      103a8fea
    • D
      i915/gtt: fix ordering causing DMAR errors on object teardown. · d15eda5c
      Dave Airlie 提交于
      Previous to the last GTT rework we always rewrote the GTT then unmapped the
      object, somehow this got reversed in the rework in 2.6.37-rc5 timeframe.
      
      This fix needs to go to stable in an alternate form since the code changed.
      
      This fixes DMAR reports on my Ironlake HP2540p.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      d15eda5c
    • D
      i915/gtt: fix ordering issues with status setup and DMAR · a46f3108
      Dave Airlie 提交于
      This code was setting up the status page before setting the DMAR-is-on-bit,
      so we were getting DMAR errors on the status page. Reverse the two bits
      of init code to the correct result.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      a46f3108
    • D
      Merge branch 'drm-intel-fixes' of ssh://master.kernel.org/pub/scm/linux/kernel/git/ickle/drm-intel · 784fe39f
      Dave Airlie 提交于
      * 'drm-intel-fixes' of ssh://master.kernel.org/pub/scm/linux/kernel/git/ickle/drm-intel: (37 commits)
        drm/i915/execbuffer: Reorder binding of objects to favour restrictions
        drm/i915: If we hit OOM when allocating GTT pages, clear the aperture
        drm/i915/evict: Ensure we completely cleanup on failure
        drm/i915/execbuffer: Correctly clear the current object list upon EFAULT
        drm/i915/debugfs: Show all objects in the gtt
        drm/i915: Record AGP memory type upon error
        drm/i915: Periodically flush the active lists and requests
        drm/i915/gtt: Unmap the PCI pages after unbinding them from the GTT
        drm/i915: Record the error batchbuffer on each ring
        drm/i915: Include TLB miss overhead for computing WM
        drm/i915: Propagate error from flushing the ring
        drm/i915: detect & report PCH display error interrupts
        drm/i915: cleanup rc6 code
        drm/i915: fix rc6 enabling around suspend/resume
        drm/i915: re-enable rc6 support for Ironlake+
        drm/i915: Make the ring IMR handling private
        drm/i915/ringbuffer: Simplify the ring irq refcounting
        drm/i915/debugfs: Show the per-ring IMR
        drm/i915: Mask USER interrupts on gen6 (until required)
        drm/i915: Handle ringbuffer stalls when flushing
        ...
      784fe39f