]> git.proxmox.com Git - mirror_ubuntu-kernels.git/blobdiff - drivers/acpi/sleep.c
ACPI: PM: sleep: Do not set suspend_ops unnecessarily
[mirror_ubuntu-kernels.git] / drivers / acpi / sleep.c
index 3023224515abe1643f3b9c87f53170d6d2709ed1..eaa47753b75840b70661830216c85050793f2245 100644 (file)
@@ -815,14 +815,18 @@ void __weak acpi_s2idle_setup(void)
 
 static void acpi_sleep_suspend_setup(void)
 {
+       bool suspend_ops_needed = false;
        int i;
 
        for (i = ACPI_STATE_S1; i < ACPI_STATE_S4; i++)
-               if (acpi_sleep_state_supported(i))
+               if (acpi_sleep_state_supported(i)) {
                        sleep_states[i] = 1;
+                       suspend_ops_needed = true;
+               }
 
-       suspend_set_ops(old_suspend_ordering ?
-               &acpi_suspend_ops_old : &acpi_suspend_ops);
+       if (suspend_ops_needed)
+               suspend_set_ops(old_suspend_ordering ?
+                               &acpi_suspend_ops_old : &acpi_suspend_ops);
 
        acpi_s2idle_setup();
 }