From: Toshi Kani <toshi.kani@xxxxxxx> Set proper ioresource flags and types for crash kernel reservation areas. Reviewed-by: Dave Young <dyoung at redhat.com> Signed-off-by: Toshi Kani <toshi.kani at hpe.com> Cc: Andrew Morton <akpm at linux-foundation.org> Cc: Baoquan He <bhe at redhat.com> Cc: Dave Young <dyoung at redhat.com> Cc: HATAYAMA Daisuke <d.hatayama at jp.fujitsu.com> Cc: kexec at lists.infradead.org Cc: linux-arch at vger.kernel.org Cc: linux-mm <linux-mm at kvack.org> Cc: Minfei Huang <mnfhuang at gmail.com> Cc: Vivek Goyal <vgoyal at redhat.com> Link: http://lkml.kernel.org/r/1452020081-26534-7-git-send-email-toshi.kani at hpe.com Signed-off-by: Borislav Petkov <bp at suse.de> --- kernel/kexec_core.c | 8 +++++--- kernel/kexec_file.c | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c index 8dc659144869..8d34308ea449 100644 --- a/kernel/kexec_core.c +++ b/kernel/kexec_core.c @@ -66,13 +66,15 @@ struct resource crashk_res = { .name = "Crash kernel", .start = 0, .end = 0, - .flags = IORESOURCE_BUSY | IORESOURCE_MEM + .flags = IORESOURCE_BUSY | IORESOURCE_SYSTEM_RAM, + .desc = IORES_DESC_CRASH_KERNEL }; struct resource crashk_low_res = { .name = "Crash kernel", .start = 0, .end = 0, - .flags = IORESOURCE_BUSY | IORESOURCE_MEM + .flags = IORESOURCE_BUSY | IORESOURCE_SYSTEM_RAM, + .desc = IORES_DESC_CRASH_KERNEL }; int kexec_should_crash(struct task_struct *p) @@ -959,7 +961,7 @@ int crash_shrink_memory(unsigned long new_size) ram_res->start = end; ram_res->end = crashk_res.end; - ram_res->flags = IORESOURCE_BUSY | IORESOURCE_MEM; + ram_res->flags = IORESOURCE_BUSY | IORESOURCE_SYSTEM_RAM; ram_res->name = "System RAM"; crashk_res.end = end - 1; diff --git a/kernel/kexec_file.c b/kernel/kexec_file.c index 007b791f676d..2bfcdc064116 100644 --- a/kernel/kexec_file.c +++ b/kernel/kexec_file.c @@ -525,7 +525,7 @@ int kexec_add_buffer(struct kimage *image, char *buffer, unsigned long bufsz, /* Walk the RAM ranges and allocate a suitable range for the buffer */ if (image->type == KEXEC_TYPE_CRASH) ret = walk_iomem_res("Crash kernel", - IORESOURCE_MEM | IORESOURCE_BUSY, + IORESOURCE_SYSTEM_RAM | IORESOURCE_BUSY, crashk_res.start, crashk_res.end, kbuf, locate_mem_hole_callback); else -- 2.3.5