diff options
Diffstat (limited to 'arch/powerpc/kernel/machine_kexec_file_64.c')
-rw-r--r-- | arch/powerpc/kernel/machine_kexec_file_64.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/machine_kexec_file_64.c b/arch/powerpc/kernel/machine_kexec_file_64.c index 7abc8a75ee48..29331fffad13 100644 --- a/arch/powerpc/kernel/machine_kexec_file_64.c +++ b/arch/powerpc/kernel/machine_kexec_file_64.c | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <linux/memblock.h> | 27 | #include <linux/memblock.h> |
28 | #include <linux/of_fdt.h> | 28 | #include <linux/of_fdt.h> |
29 | #include <linux/libfdt.h> | 29 | #include <linux/libfdt.h> |
30 | #include <asm/ima.h> | ||
30 | 31 | ||
31 | #define SLAVE_CODE_SIZE 256 | 32 | #define SLAVE_CODE_SIZE 256 |
32 | 33 | ||
@@ -180,7 +181,7 @@ int setup_purgatory(struct kimage *image, const void *slave_code, | |||
180 | * | 181 | * |
181 | * Return: 0 on success, or negative errno on error. | 182 | * Return: 0 on success, or negative errno on error. |
182 | */ | 183 | */ |
183 | static int delete_fdt_mem_rsv(void *fdt, unsigned long start, unsigned long size) | 184 | int delete_fdt_mem_rsv(void *fdt, unsigned long start, unsigned long size) |
184 | { | 185 | { |
185 | int i, ret, num_rsvs = fdt_num_mem_rsv(fdt); | 186 | int i, ret, num_rsvs = fdt_num_mem_rsv(fdt); |
186 | 187 | ||
@@ -328,6 +329,8 @@ int setup_new_fdt(void *fdt, unsigned long initrd_load_addr, | |||
328 | } | 329 | } |
329 | } | 330 | } |
330 | 331 | ||
332 | remove_ima_buffer(fdt, chosen_node); | ||
333 | |||
331 | ret = fdt_setprop(fdt, chosen_node, "linux,booted-from-kexec", NULL, 0); | 334 | ret = fdt_setprop(fdt, chosen_node, "linux,booted-from-kexec", NULL, 0); |
332 | if (ret) { | 335 | if (ret) { |
333 | pr_err("Error setting up the new device tree.\n"); | 336 | pr_err("Error setting up the new device tree.\n"); |