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

From: Pavel Machek
Date: Thu Aug 07 2008 - 07:09:07 EST


> 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@xxxxxxxxx>
>
> ---
> 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);
>

Would it be possible to create common function for hibernation and
kexec? Keeping complex stuff like this in sync is ugly.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
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/