summaryrefslogtreecommitdiffstats
path: root/kernel/kexec.c
diff options
context:
space:
mode:
authorJiang Liu <liuj97@gmail.com>2013-04-29 15:06:58 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2013-04-29 15:54:31 -0700
commite07cee23e64137f7da2fb35d7b7c0ad26cc0edec (patch)
tree24dd1390f705818c95c11bd44942c44c02712398 /kernel/kexec.c
parentc941836819569abd5319f93f68638b65e2dfecc5 (diff)
downloadlinux-stable-e07cee23e64137f7da2fb35d7b7c0ad26cc0edec.tar.gz
linux-stable-e07cee23e64137f7da2fb35d7b7c0ad26cc0edec.tar.bz2
linux-stable-e07cee23e64137f7da2fb35d7b7c0ad26cc0edec.zip
mm,kexec: use common help functions to free reserved pages
Use common help functions to free reserved pages. Signed-off-by: Jiang Liu <jiang.liu@huawei.com> Cc: Eric Biederman <ebiederm@xmission.com> Reviewed-by: Zhang Yanfei <zhangyanfei@cn.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/kexec.c')
-rw-r--r--kernel/kexec.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/kernel/kexec.c b/kernel/kexec.c
index ffd4e111fd67..b19181d44201 100644
--- a/kernel/kexec.c
+++ b/kernel/kexec.c
@@ -1118,12 +1118,8 @@ void __weak crash_free_reserved_phys_range(unsigned long begin,
{
unsigned long addr;
- for (addr = begin; addr < end; addr += PAGE_SIZE) {
- ClearPageReserved(pfn_to_page(addr >> PAGE_SHIFT));
- init_page_count(pfn_to_page(addr >> PAGE_SHIFT));
- free_page((unsigned long)__va(addr));
- totalram_pages++;
- }
+ for (addr = begin; addr < end; addr += PAGE_SIZE)
+ free_reserved_page(pfn_to_page(addr >> PAGE_SHIFT));
}
int crash_shrink_memory(unsigned long new_size)