diff options
author | Rafael J. Wysocki <rjw@sisk.pl> | 2010-10-04 16:08:12 -0400 |
---|---|---|
committer | Rafael J. Wysocki <rjw@sisk.pl> | 2010-10-16 19:57:49 -0400 |
commit | 3624eb04c24861ab296842414f9752a393e68372 (patch) | |
tree | 4e92377b27b993488c9270b435bcdd2d6574a386 /kernel/power | |
parent | 71c63122c4609a917f14a79c32067a68909fc487 (diff) |
PM / Hibernate: Modify signature used to mark swap
Since we are adding compression to the kernel's hibernate code,
change signature used by it to mark swap spaces, so that earlier
kernels don't attempt to restore compressed images they cannot
handle.
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Pavel Machek <pavel@ucw.cz>
Diffstat (limited to 'kernel/power')
-rw-r--r-- | kernel/power/swap.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/power/swap.c b/kernel/power/swap.c index 2dfa87869b49..916eaa790399 100644 --- a/kernel/power/swap.c +++ b/kernel/power/swap.c | |||
@@ -29,7 +29,7 @@ | |||
29 | 29 | ||
30 | #include "power.h" | 30 | #include "power.h" |
31 | 31 | ||
32 | #define SWSUSP_SIG "S1SUSPEND" | 32 | #define HIBERNATE_SIG "LINHIB0001" |
33 | 33 | ||
34 | /* | 34 | /* |
35 | * The swap map is a data structure used for keeping track of each page | 35 | * The swap map is a data structure used for keeping track of each page |
@@ -195,7 +195,7 @@ static int mark_swapfiles(struct swap_map_handle *handle, unsigned int flags) | |||
195 | if (!memcmp("SWAP-SPACE",swsusp_header->sig, 10) || | 195 | if (!memcmp("SWAP-SPACE",swsusp_header->sig, 10) || |
196 | !memcmp("SWAPSPACE2",swsusp_header->sig, 10)) { | 196 | !memcmp("SWAPSPACE2",swsusp_header->sig, 10)) { |
197 | memcpy(swsusp_header->orig_sig,swsusp_header->sig, 10); | 197 | memcpy(swsusp_header->orig_sig,swsusp_header->sig, 10); |
198 | memcpy(swsusp_header->sig,SWSUSP_SIG, 10); | 198 | memcpy(swsusp_header->sig, HIBERNATE_SIG, 10); |
199 | swsusp_header->image = handle->first_sector; | 199 | swsusp_header->image = handle->first_sector; |
200 | swsusp_header->flags = flags; | 200 | swsusp_header->flags = flags; |
201 | error = hib_bio_write_page(swsusp_resume_block, | 201 | error = hib_bio_write_page(swsusp_resume_block, |
@@ -916,7 +916,7 @@ int swsusp_check(void) | |||
916 | if (error) | 916 | if (error) |
917 | goto put; | 917 | goto put; |
918 | 918 | ||
919 | if (!memcmp(SWSUSP_SIG, swsusp_header->sig, 10)) { | 919 | if (!memcmp(HIBERNATE_SIG, swsusp_header->sig, 10)) { |
920 | memcpy(swsusp_header->sig, swsusp_header->orig_sig, 10); | 920 | memcpy(swsusp_header->sig, swsusp_header->orig_sig, 10); |
921 | /* Reset swap signature now */ | 921 | /* Reset swap signature now */ |
922 | error = hib_bio_write_page(swsusp_resume_block, | 922 | error = hib_bio_write_page(swsusp_resume_block, |