ACPI and power management fixes for 3.12-rc3

1) After recent locking changes in the cpufreq core it is possible
     to trigger BUG_ON(!policy) in lock_policy_rwsem_read() if
     cpufreq_get() is called before registering a cpufreq driver.
     Fix from Viresh Kumar.
 
  2) If intel_pstate has been loaded already, it doesn't make sense
     to do anything in acpi_cpufreq_init() and moreover doing something
     in there in that case may be harmful, so make that function return
     immediately if another cpufreq driver is already present.  From
     Yinghai Lu.
 
  3) The ACPI IPMI driver sometimes attempts to acquire a mutex from
     interrupt context, which can be avoided by replacing that mutex
     with a spinlock.  From Lv Zheng.
 
  4) A NULL pointer may be dereferenced by the exynos5440 cpufreq
     driver if a memory allocation made by it fails.  Fix from
     Sachin Kamat.
 
  5) Hanjun Guo's commit fixes a typo in the kerneldoc comment
     documenting acpi_bus_unregister_driver().
 
 /
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.19 (GNU/Linux)
 
 iQIcBAABCAAGBQJSRg7lAAoJEKhOf7ml8uNsxaMP/1unuxyaCIrvCrrzx5ku5VmB
 Bw0g7bf1qjwJJJm75oUJNaCGOirsczYe2CvFs9KpXCCt1gyf9LgWoVjIR5Qhcp9A
 wOPfs1XqAzuagTr7AHzxUpJFwnd1XjPpkhjbCy3tDeJMIcBALfwEBVHMVQpUyiBe
 +oNgGbkI424ffyhhdGUTGrKTQYLa78/Ydz15gwaWBbmjlCpagb25o7unOt/Ia7l/
 m0rFMvXEPW/n1dygnKvig2MkjrGiOpamwpKV9xGYRhARK9J/9PcDXObGm2EOlSrY
 7kFQ5U8i8359uljfZF7V2NOcfkGdHL82J9+cqkbIaFusdJ2iAOMdLJp9n5YhuKOV
 DI32Ad+7PqXdUSz9r6L+Yw14/8Svn27JvIsCh9rCTZyaD0oL4g1zBrLimz+XNljC
 Y6AEj8DA1vHCqcxfZaCg6VEZHubfEZNWD/+s6Da5CtYnU2QH5utGtcinRVukyB+v
 mHReW+ZMNNJDGCiUvTNis7RL5YKkVXtZLkO2vLlBbSMQg4tGRmhSvKfxRr4G2ndZ
 g+VKIOdPZ8otjb2/QVWXwGKAjFfwVNUaZl2w4nWKAcwCeebN9h6jjbtcpexWr6Qe
 N1hh14YVoemamax4Sxks93LBXXK+/8zoXDY3OajcMepnSIvuAvGCwqOx3B6U+4iX
 mda1PVzHLkauCDYrciGl
 =WvF8
 -----END PGP SIGNATURE-----

Merge tag 'pm+acpi-3.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPI and power management fixes from Rafael Wysocki:
 "These fix one recent cpufreq regression, a few older bugs that may
  harm users and a kerneldoc typo.

  Specifics:

   1) After the recent locking changes in the cpufreq core it is
      possible to trigger BUG_ON(!policy) in lock_policy_rwsem_read() if
      cpufreq_get() is called before registering a cpufreq driver.  Fix
      from Viresh Kumar.

   2) If intel_pstate has been loaded already, it doesn't make sense to
      do anything in acpi_cpufreq_init() and moreover doing something in
      there in that case may be harmful, so make that function return
      immediately if another cpufreq driver is already present.  From
      Yinghai Lu.

   3) The ACPI IPMI driver sometimes attempts to acquire a mutex from
      interrupt context, which can be avoided by replacing that mutex
      with a spinlock.  From Lv Zheng.

   4) A NULL pointer may be dereferenced by the exynos5440 cpufreq
      driver if a memory allocation made by it fails.  Fix from Sachin
      Kamat.

   5) Hanjun Guo's commit fixes a typo in the kerneldoc comment
      documenting acpi_bus_unregister_driver()"

* tag 'pm+acpi-3.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  ACPI / scan: fix typo in comments of acpi_bus_unregister_driver()
  cpufreq: exynos5440: Fix potential NULL pointer dereference
  cpufreq: check cpufreq driver is valid and cpufreq isn't disabled in cpufreq_get()
  acpi-cpufreq: skip loading acpi_cpufreq after intel_pstate
  ACPI / IPMI: Fix atomic context requirement of ipmi_msg_handler()
This commit is contained in:
Linus Torvalds 2013-09-28 13:27:31 -07:00
commit ec220be785
5 changed files with 23 additions and 12 deletions