diff options
author | Toshi Kani <toshi.kani@hpe.com> | 2016-01-26 15:57:23 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2016-01-30 03:49:57 -0500 |
commit | 1a085d0727afaedb9506f04798516298b1676e11 (patch) | |
tree | ba75168aa705c5b4f918f79f34c51e14181b242c | |
parent | 35d98e93fe6a7ab612f6b389ce42c1dc135d6eef (diff) |
kexec: Set IORESOURCE_SYSTEM_RAM for System RAM
Set proper ioresource flags and types for crash kernel
reservation areas.
Signed-off-by: Toshi Kani <toshi.kani@hpe.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Dave Young <dyoung@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Baoquan He <bhe@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: HATAYAMA Daisuke <d.hatayama@jp.fujitsu.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Luis R. Rodriguez <mcgrof@suse.com>
Cc: Minfei Huang <mnfhuang@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Toshi Kani <toshi.kani@hp.com>
Cc: Vivek Goyal <vgoyal@redhat.com>
Cc: kexec@lists.infradead.org
Cc: linux-arch@vger.kernel.org
Cc: linux-mm <linux-mm@kvack.org>
Link: http://lkml.kernel.org/r/1453841853-11383-8-git-send-email-bp@alien8.de
Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r-- | kernel/kexec_core.c | 8 | ||||
-rw-r--r-- | 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 = { | |||
66 | .name = "Crash kernel", | 66 | .name = "Crash kernel", |
67 | .start = 0, | 67 | .start = 0, |
68 | .end = 0, | 68 | .end = 0, |
69 | .flags = IORESOURCE_BUSY | IORESOURCE_MEM | 69 | .flags = IORESOURCE_BUSY | IORESOURCE_SYSTEM_RAM, |
70 | .desc = IORES_DESC_CRASH_KERNEL | ||
70 | }; | 71 | }; |
71 | struct resource crashk_low_res = { | 72 | struct resource crashk_low_res = { |
72 | .name = "Crash kernel", | 73 | .name = "Crash kernel", |
73 | .start = 0, | 74 | .start = 0, |
74 | .end = 0, | 75 | .end = 0, |
75 | .flags = IORESOURCE_BUSY | IORESOURCE_MEM | 76 | .flags = IORESOURCE_BUSY | IORESOURCE_SYSTEM_RAM, |
77 | .desc = IORES_DESC_CRASH_KERNEL | ||
76 | }; | 78 | }; |
77 | 79 | ||
78 | int kexec_should_crash(struct task_struct *p) | 80 | int kexec_should_crash(struct task_struct *p) |
@@ -959,7 +961,7 @@ int crash_shrink_memory(unsigned long new_size) | |||
959 | 961 | ||
960 | ram_res->start = end; | 962 | ram_res->start = end; |
961 | ram_res->end = crashk_res.end; | 963 | ram_res->end = crashk_res.end; |
962 | ram_res->flags = IORESOURCE_BUSY | IORESOURCE_MEM; | 964 | ram_res->flags = IORESOURCE_BUSY | IORESOURCE_SYSTEM_RAM; |
963 | ram_res->name = "System RAM"; | 965 | ram_res->name = "System RAM"; |
964 | 966 | ||
965 | crashk_res.end = end - 1; | 967 | 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, | |||
525 | /* Walk the RAM ranges and allocate a suitable range for the buffer */ | 525 | /* Walk the RAM ranges and allocate a suitable range for the buffer */ |
526 | if (image->type == KEXEC_TYPE_CRASH) | 526 | if (image->type == KEXEC_TYPE_CRASH) |
527 | ret = walk_iomem_res("Crash kernel", | 527 | ret = walk_iomem_res("Crash kernel", |
528 | IORESOURCE_MEM | IORESOURCE_BUSY, | 528 | IORESOURCE_SYSTEM_RAM | IORESOURCE_BUSY, |
529 | crashk_res.start, crashk_res.end, kbuf, | 529 | crashk_res.start, crashk_res.end, kbuf, |
530 | locate_mem_hole_callback); | 530 | locate_mem_hole_callback); |
531 | else | 531 | else |