提交 254b5477 编写于 作者: R Rafael J. Wysocki 提交者: Linus Torvalds

[PATCH] swsusp: remove wrong code from data_free

The following patch removes some wrong code from the data_free() function
in swsusp.

This function could only be called if there's an error while writing the
suspend image to swap, so it is not triggered easily.  However, if
triggered, it would probably corrupt some memory.
Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
Acked-by: NPavel Machek <pavel@ucw.cz>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 249a6771
...@@ -402,15 +402,14 @@ static int write_page(unsigned long addr, swp_entry_t * loc) ...@@ -402,15 +402,14 @@ static int write_page(unsigned long addr, swp_entry_t * loc)
static void data_free(void) static void data_free(void)
{ {
swp_entry_t entry; swp_entry_t entry;
int i; struct pbe * p;
for (i = 0; i < nr_copy_pages; i++) { for_each_pbe(p, pagedir_nosave) {
entry = (pagedir_nosave + i)->swap_address; entry = p->swap_address;
if (entry.val) if (entry.val)
swap_free(entry); swap_free(entry);
else else
break; break;
(pagedir_nosave + i)->swap_address = (swp_entry_t){0};
} }
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册