[GIT PULL] ACPI and power management fixes for v3.12-rc1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

Please pull from the git repository at

  git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git pm+acpi-fixes-3.12-rc1

to receive ACPI and power management fixes for v3.12 with top-most commit
f1728fd1599112239ed5cebc7be9810264db6792

  Merge branch 'pm-cpufreq'

on top of commit a9238741987386bb549d61572973c7e62b2a4145

  Merge tag 'pci-v3.12-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaa
s/pci

All of these commits are fixes that have emerged recently and some of them
fix bugs introduced during this merge window.

Specifics:

 1) ACPI-based PCI hotplug (ACPIPHP) fixes related to spurious events

  After the recent ACPIPHP changes we've seen some interesting breakage
  on a system that triggers device check notifications during boot for
  non-existing devices.  Although those notifications are really
  spurious, we should be able to deal with them nevertheless and that
  shouldn't introduce too much overhead.  Four commits to make that
  work properly.

 2) Memory hotplug and hibernation mutual exclusion rework

  This was maent to be a cleanup, but it happens to fix a classical
  ABBA deadlock between system suspend/hibernation and ACPI memory
  hotplug which is possible if they are started roughly at the same
  time.  Three commits rework memory hotplug so that it doesn't
  acquire pm_mutex and make hibernation use device_hotplug_lock
  which prevents it from racing with memory hotplug.

 3) ACPI Intel LPSS (Low-Power Subsystem) driver crash fix

  The ACPI LPSS driver crashes during boot on Apple Macbook Air with
  Haswell that has slightly unusual BIOS configuration in which one
  of the LPSS device's _CRS method doesn't return all of the information
  expected by the driver.  Fix from Mika Westerberg, for stable.

 4) ACPICA fix related to Store->ArgX operation

  AML interpreter fix for obscure breakage that causes AML to be
  executed incorrectly on some machines (observed in practice).  From
  Bob Moore.

 5) ACPI core fix for PCI ACPI device objects lookup

  There still are cases in which there is more than one ACPI device
  object matching a given PCI device and we don't choose the one that
  the BIOS expects us to choose, so this makes the lookup take more
  criteria into account in those cases.

 6) Fix to prevent cpuidle from crashing in some rare cases

  If the result of cpuidle_get_driver() is NULL, which can happen on
  some systems, cpuidle_driver_ref() will crash trying to use that
  pointer and the Daniel Fu's fix prevents that from happening.

 7) cpufreq fixes related to CPU hotplug

  Stephen Boyd reported a number of concurrency problems with cpufreq
  related to CPU hotplug which are addressed by a series of fixes
  from Srivatsa S Bhat and Viresh Kumar.

 8) cpufreq fix for time conversion in time_in_state attribute

  Time conversion carried out by cpufreq when user space attempts to
  read /sys/devices/system/cpu/cpu*/cpufreq/stats/time_in_state won't
  work correcty if cputime_t doesn't map directly to jiffies.  Fix
  from Andreas Schwab.

 9) Revert of a troublesome cpufreq commit

  Commit 7c30ed5 (cpufreq: make sure frequency transitions are
  serialized) was intended to address some known concurrency problems
  in cpufreq related to the ordering of transitions, but unfortunately
  it introduced several problems of its own, so I decided to revert it
  now and address the original problems later in a more robust way.

10) Intel Haswell CPU models for intel_pstate from Nell Hardcastle.

11) cpufreq fixes related to system suspend/resume

  The recent cpufreq changes that made it preserve CPU sysfs attributes
  over suspend/resume cycles introduced a possible NULL pointer
  dereference that caused it to crash during the second attempt to
  suspend.  Three commits from Srivatsa S Bhat fix that problem and a
  couple of related issues.

12) cpufreq locking fix

  cpufreq_policy_restore() should acquire the lock for reading, but
  it acquires it for writing.  Fix from Lan Tianyu.

Thanks!


---------------

Andreas Schwab (1):
      cpufreq: Fix wrong time unit conversion

Bob Moore (1):
      ACPICA: Fix for a Store->ArgX when ArgX contains a reference to a field.

Daniel Fu (1):
      cpuidle: Check the result of cpuidle_get_driver() against NULL

Lan Tianyu (1):
      cpufreq: Acquire the lock in cpufreq_policy_restore() for reading

Mika Westerberg (1):
      ACPI / LPSS: don't crash if a device has no MMIO resources

Nell Hardcastle (1):
      intel_pstate: Add Haswell CPU models

Rafael J. Wysocki (9):
      ACPI / scan: Change ordering of locks for device hotplug
      PM / hibernate: Create memory bitmaps after freezing user space
      PM / hibernate / memory hotplug: Rework mutual exclusion
      ACPI / hotplug / PCI: Don't trim devices before scanning the namespace
      ACPI / hotplug / PCI: Avoid doing too much for spurious notifies
      ACPI / hotplug / PCI: Use _OST to notify firmware about notify status
      ACPI / hotplug / PCI: Avoid parent bus rescans on spurious device checks
      ACPI / bind: Prefer device objects with _STA to those without it
      Revert "cpufreq: make sure frequency transitions are serialized"

Srivatsa S. Bhat (8):
      cpufreq: Split __cpufreq_remove_dev() into two parts
      cpufreq: Invoke __cpufreq_remove_dev_finish() after releasing cpu_hotplug.lock
      cpufreq: Synchronize the cpufreq store_*() routines with CPU hotplug
      cpufreq: Remove temporary fix for race between CPU hotplug and sysfs-writes
      cpufreq: Use signed type for 'ret' variable, to store negative error values
      cpufreq: Fix crash in cpufreq-stats during suspend/resume
      cpufreq: Restructure if/else block to avoid unintended behavior
      cpufreq: Prevent problems in update_policy_cpu() if last_cpu == new_cpu

Viresh Kumar (2):
      cpufreq: don't allow governor limits to be changed when it is disabled
      cpufreq: serialize calls to __cpufreq_governor()

---------------

 drivers/acpi/acpi_lpss.c           |    3 +-
 drivers/acpi/acpica/exstore.c      |  166 ++++++++++++++++++++++--------------
 drivers/acpi/glue.c                |   35 +++++---
 drivers/acpi/scan.c                |   15 ++--
 drivers/cpufreq/cpufreq.c          |  152 ++++++++++++++++++++++-----------
 drivers/cpufreq/cpufreq_stats.c    |    2 +-
 drivers/cpufreq/intel_pstate.c     |    5 ++
 drivers/cpuidle/driver.c           |    3 +-
 drivers/pci/hotplug/acpiphp_glue.c |   61 ++++++++++---
 include/linux/cpufreq.h            |    1 -
 kernel/power/hibernate.c           |   45 +++++-----
 kernel/power/user.c                |   24 +++---
 mm/memory_hotplug.c                |    4 -
 13 files changed, 328 insertions(+), 188 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux