ACPI: fix suspend regression due to idle update
authorVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Mon, 11 Feb 2008 23:20:27 +0000 (15:20 -0800)
committerLen Brown <len.brown@intel.com>
Thu, 14 Feb 2008 04:59:31 +0000 (23:59 -0500)
commitb077fbada161479d9a32a7730d2822d5e737b306
tree2653c87aebf041ba0fb175a23401ee894d83d95f
parente760e716d47b48caf98da348368fd41b4a9b9e7e
ACPI: fix suspend regression due to idle update

Earlier patch (bc71bec91f9875ef825d12104acf3bf4ca215fa4) broke
suspend resume on many laptops. The problem was reported by
Carlos R. Mafra and Calvin Walton, who bisected the issue to above patch.

The problem was because, C2 and C3 code were calling acpi_idle_enter_c1
directly, with C2 or C3 as state parameter, while suspend/resume was in
progress. The patch bc71bec started making use of that state information,
assuming that it would always be referring to C1 state. This caused the
problem with suspend-resume as we ended up using C2/C3 state indirectly.

Fix this by adding acpi_idle_suspend check in enter_c1.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/processor_idle.c