[GIT PULL] Late power management and ACPI fixes for v3.10

From: Rafael J. Wysocki
Date: Wed Jun 26 2013 - 08:52:49 EST


Hi Linus,

Please pull from the git repository at

git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git pm+acpi-3.10-late

to receive late power management and ACPI fixes for v3.10 with top-most commit
45e00374db944b1c12987b501bcaa279b3e36d93

Merge branch 'pm-fixes'

on top of commit 9e895ace5d82df8929b16f58e9f515f6d54ab82d

Linux 3.10-rc7

Sorry about the timing of this, but ACPI-based docking stations with PCI
devices on them and ATA bays would be hardly usable with 3.10 without it.
We've been working on these fixes for the last couple of weeks and
everyone involved appears to be reasonably comfortable with them now.

The PM part is one fix for a cpufreq regression introduced recently.

Specifics:

- Fix for an ACPI dock regression introduced by the recent rework of
the ACPI-based PCI hotplug code (acpiphp) that caused it to be
initialized before the ACPI dock driver, which is incorrect (ACPI
dock has to be initialized before acpiphp so that acpiphp can
register PCI devices on docking stations with it for PCI hotplug on
re-dock to work). From Jiang Liu.

- Fix for PCI resources allocation in the ACPI-based PCI hotplug code
(acpiphp) that makes it use the same PCI resources assignment rules
during runtime hotplug that are used during boot (the BIOS' choices
are now respected in both cases). This prevents PCI resource
allocation failures during hotplug from happening in some cases.
From Jiang Liu.

- Fix for ordering and synchronization issues during hot-removal of
PCI devices on docking stations. It makes the ACPI dock code carry
out the PCI devices removal synchronously during undock instead of
spawning a separate asynchronous work item to remove each of them
without even bothering to wait for all those work items to complete.
The hot-addition part is changed analogously.

- Fix for a regression (introduced a few releases ago) that removed
the code to register a hotplug notificaion handler for for ATA
ports/devices inadvertently which prevented ATA bays hotplug from
working. The missing code is added back with some improvements.
From Aaron Lu.

- Fix for a recent cpufreq regression causing a NULL pointer
dereference to trigger in od_set_powersave_bias() in some
situations from Jacob Shin.

Thanks!


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

Aaron Lu (1):
libata-acpi: add back ACPI based hotplug functionality

Jacob Shin (1):
cpufreq: fix NULL pointer deference at od_set_powersave_bias()

Jiang Liu (2):
ACPI / dock: Initialize ACPI dock subsystem upfront
PCI / ACPI: Use boot-time resource allocation rules during hotplug

Rafael J. Wysocki (1):
ACPI / dock / PCI: Synchronous handling of dock events for PCI devices

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

drivers/acpi/dock.c | 179 ++++++++++++++++++++++++--------------------
drivers/acpi/internal.h | 5 ++
drivers/acpi/scan.c | 1 +
drivers/ata/libata-acpi.c | 37 ++++++++-
drivers/ata/libata-core.c | 2 +
drivers/ata/libata.h | 2 +
drivers/cpufreq/cpufreq_ondemand.c | 17 ++++-
drivers/pci/hotplug/acpiphp_glue.c | 53 +++++++++----
drivers/pci/pci.h | 5 ++
drivers/pci/setup-bus.c | 8 +-
include/acpi/acpi_drivers.h | 8 +-
11 files changed, 207 insertions(+), 110 deletions(-)

--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/