[PATCH 4/6] kexec jump: in sync with hibernation implementation

Huang Ying ying.huang at intel.com
Thu Aug 7 05:05:32 EDT 2008


Add device_pm_lock() and device_pm_unlock() in kernel_kexec() to be
in sync with current hibernation implementation.

Signed-off-by: Huang Ying <ying.huang at intel.com>

---
 kernel/kexec.c |    2 ++
 1 file changed, 2 insertions(+)

--- a/kernel/kexec.c
+++ b/kernel/kexec.c
@@ -1457,6 +1457,7 @@ int kernel_kexec(void)
 		error = disable_nonboot_cpus();
 		if (error)
 			goto Resume_devices;
+		device_pm_lock();
 		local_irq_disable();
 		/* At this point, device_suspend() has been called,
 		 * but *not* device_power_down(). We *must*
@@ -1485,6 +1486,7 @@ int kernel_kexec(void)
 		device_power_up(PMSG_RESTORE);
  Enable_irqs:
 		local_irq_enable();
+		device_pm_unlock();
 		enable_nonboot_cpus();
  Resume_devices:
 		device_resume(PMSG_RESTORE);





More information about the kexec mailing list