From cadcafa41deb92de90957767c4ee0fc7c9c15a41 Mon Sep 17 00:00:00 2001 From: "Rafael J. Wysocki" Date: Sun, 30 Oct 2005 15:00:01 -0800 Subject: [PATCH] --- yaml --- r: 11786 b: refs/heads/master c: 0245b3e787dc3267a915e1f56419e7e9c197e148 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/kernel/power/disk.c | 8 ++------ trunk/kernel/power/swsusp.c | 2 +- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/[refs] b/[refs] index 287cc713e0f1..3cbba8c6c5c5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2e32a43efdc8175579cc91e8b620ac331376a437 +refs/heads/master: 0245b3e787dc3267a915e1f56419e7e9c197e148 diff --git a/trunk/kernel/power/disk.c b/trunk/kernel/power/disk.c index 44ef5e799df0..027322a564f4 100644 --- a/trunk/kernel/power/disk.c +++ b/trunk/kernel/power/disk.c @@ -92,10 +92,7 @@ static void free_some_memory(void) printk("Freeing memory... "); while ((tmp = shrink_all_memory(10000))) { pages += tmp; - printk("\b%c", p[i]); - i++; - if (i > 3) - i = 0; + printk("\b%c", p[i++ % 4]); } printk("\bdone (%li pages freed)\n", pages); } @@ -177,13 +174,12 @@ int pm_suspend_disk(void) goto Done; if (in_suspend) { + device_resume(); pr_debug("PM: writing image.\n"); error = swsusp_write(); if (!error) power_down(pm_disk_mode); else { - /* swsusp_write can not fail in device_resume, - no need to do second device_resume */ swsusp_free(); unprepare_processes(); return error; diff --git a/trunk/kernel/power/swsusp.c b/trunk/kernel/power/swsusp.c index ae8425b69b44..12db1d2ad61f 100644 --- a/trunk/kernel/power/swsusp.c +++ b/trunk/kernel/power/swsusp.c @@ -562,7 +562,7 @@ int enough_swap(unsigned nr_pages) int swsusp_write(void) { int error; - device_resume(); + lock_swapdevices(); error = write_suspend_image(); /* This will unlock ignored swap devices since writing is finished */