diff options
| author | Rafael J. Wysocki <[email protected]> | 2013-09-14 01:38:20 +0000 |
|---|---|---|
| committer | Rafael J. Wysocki <[email protected]> | 2013-09-19 22:24:43 +0000 |
| commit | 834145156bedadfb50121f0bc5e9d9f9f942bcca (patch) | |
| tree | 66659b38081b032ae8d82919284516ef4158fee1 /fs/cachefiles/interface.c | |
| parent | Linux 3.12-rc1 (diff) | |
| download | kernel-834145156bedadfb50121f0bc5e9d9f9f942bcca.tar.gz kernel-834145156bedadfb50121f0bc5e9d9f9f942bcca.zip | |
PCI / ACPI / PM: Clear pme_poll for devices in D3cold on wakeup
Commit 448bd85 (PCI/PM: add PCIe runtime D3cold support) added a
piece of code to pci_acpi_wake_dev() causing that function to behave
in a special way for devices in D3cold (so that their configuration
registers are not accessed before those devices are resumed).
However, it didn't take the clearing of the pme_poll flag into
account. That has to be done for all devices, even if they are in
D3cold, or pci_pme_list_scan() will not know that wakeup has been
signaled for the device and will poll its PME Status bit
unnecessarily.
Fix the problem by moving the clearing of the pme_poll flag in
pci_acpi_wake_dev() before the code introduced by commit 448bd85.
Reported-and-tested-by: David E. Box <[email protected]>
Signed-off-by: Rafael J. Wysocki <[email protected]>
Acked-by: Bjorn Helgaas <[email protected]>
Cc: 3.6+ <[email protected]> # 3.6+
Diffstat (limited to 'fs/cachefiles/interface.c')
0 files changed, 0 insertions, 0 deletions
