--- linux-2.6.0-test7/kernel/power/pmdisk.c-orig 2003-10-12 18:35:58.000000000 +0300 +++ linux-2.6.0-test7/kernel/power/pmdisk.c 2003-10-12 19:00:32.000000000 +0300 @@ -35,6 +35,7 @@ extern int pmdisk_arch_suspend(int resume); +extern int wakeup_bdflush(long nr_pages); #define __ADDRESS(x) ((unsigned long) phys_to_virt(x)) #define ADDRESS(x) __ADDRESS((x) << PAGE_SHIFT) @@ -372,6 +373,9 @@ goto FreePagedir; error = mark_swapfiles(prev); + + /* Make sure the data gets to disk */ + wakeup_bdflush(0); Done: return error; FreePagedir: