[PATCH] swsusp: Use suspend_console
Add suspend_console() and resume_console() to the suspend-to-disk code paths so that the users of netconsole can use swsusp with it. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
dea20a3fbd
commit
97c7801cd5
@@ -18,6 +18,7 @@
|
||||
#include <linux/fs.h>
|
||||
#include <linux/mount.h>
|
||||
#include <linux/pm.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/cpu.h>
|
||||
|
||||
#include "power.h"
|
||||
@@ -119,8 +120,10 @@ int pm_suspend_disk(void)
|
||||
if (error)
|
||||
return error;
|
||||
|
||||
suspend_console();
|
||||
error = device_suspend(PMSG_FREEZE);
|
||||
if (error) {
|
||||
resume_console();
|
||||
printk("Some devices failed to suspend\n");
|
||||
unprepare_processes();
|
||||
return error;
|
||||
@@ -133,6 +136,7 @@ int pm_suspend_disk(void)
|
||||
|
||||
if (in_suspend) {
|
||||
device_resume();
|
||||
resume_console();
|
||||
pr_debug("PM: writing image.\n");
|
||||
error = swsusp_write();
|
||||
if (!error)
|
||||
@@ -148,6 +152,7 @@ int pm_suspend_disk(void)
|
||||
swsusp_free();
|
||||
Done:
|
||||
device_resume();
|
||||
resume_console();
|
||||
unprepare_processes();
|
||||
return error;
|
||||
}
|
||||
@@ -212,7 +217,9 @@ static int software_resume(void)
|
||||
|
||||
pr_debug("PM: Preparing devices for restore.\n");
|
||||
|
||||
suspend_console();
|
||||
if ((error = device_suspend(PMSG_PRETHAW))) {
|
||||
resume_console();
|
||||
printk("Some devices failed to suspend\n");
|
||||
swsusp_free();
|
||||
goto Thaw;
|
||||
@@ -224,6 +231,7 @@ static int software_resume(void)
|
||||
swsusp_resume();
|
||||
pr_debug("PM: Restore failed, recovering.n");
|
||||
device_resume();
|
||||
resume_console();
|
||||
Thaw:
|
||||
unprepare_processes();
|
||||
Done:
|
||||
|
Reference in New Issue
Block a user