[PATCH] swsusp: rework memory freeing on resume

The following patch makes swsusp use the PG_nosave and PG_nosave_free flags to
mark pages that should be freed in case of an error during resume.

This allows us to simplify the code and to use swsusp_free() in all of the
swsusp's resume error paths, which makes them actually work.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Rafael J. Wysocki
2005-10-30 14:59:58 -08:00
committed by Linus Torvalds
parent a0f496517f
commit 2c1b4a5ca4
6 changed files with 65 additions and 150 deletions

View File

@@ -71,8 +71,7 @@ void restore_processor_state(void);
struct saved_context;
void __save_processor_state(struct saved_context *ctxt);
void __restore_processor_state(struct saved_context *ctxt);
extern unsigned long get_usable_page(gfp_t gfp_mask);
extern void free_eaten_memory(void);
unsigned long get_safe_page(gfp_t gfp_mask);
/*
* XXX: We try to keep some more pages free so that I/O operations succeed