summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kexec/arch/i386/crashdump-x86.c8
-rw-r--r--kexec/arch/i386/crashdump-x86.h7
-rw-r--r--purgatory/arch/i386/crashdump_backup.c8
3 files changed, 11 insertions, 12 deletions
diff --git a/kexec/arch/i386/crashdump-x86.c b/kexec/arch/i386/crashdump-x86.c
index 03995d8..b286527 100644
--- a/kexec/arch/i386/crashdump-x86.c
+++ b/kexec/arch/i386/crashdump-x86.c
@@ -533,7 +533,7 @@ static int prepare_crash_memory_elf64_headers(struct kexec_info *info,
bufp += sizeof(Elf64_Phdr);
phdr->p_type = PT_LOAD;
phdr->p_flags = PF_R|PF_W|PF_X;
- if (mstart == BACKUP_START && mend == BACKUP_END)
+ if (mstart == BACKUP_SRC_START && mend == BACKUP_SRC_END)
phdr->p_offset = info->backup_start;
else
phdr->p_offset = mstart;
@@ -628,7 +628,7 @@ static int prepare_crash_memory_elf32_headers(struct kexec_info *info,
bufp += sizeof(Elf32_Phdr);
phdr->p_type = PT_LOAD;
phdr->p_flags = PF_R|PF_W|PF_X;
- if (mstart == BACKUP_START && mend == BACKUP_END)
+ if (mstart == BACKUP_SRC_START && mend == BACKUP_SRC_END)
phdr->p_offset = info->backup_start;
else
phdr->p_offset = mstart;
@@ -667,12 +667,12 @@ int load_crashdump_segments(struct kexec_info *info, char* mod_cmdline,
sz = (sizeof(struct memory_range) * (KEXEC_MAX_SEGMENTS + 1));
memmap_p = xmalloc(sz);
memset(memmap_p, 0, sz);
- add_memmap(memmap_p, BACKUP_START, BACKUP_SIZE);
+ add_memmap(memmap_p, BACKUP_SRC_START, BACKUP_SRC_SIZE);
sz = crash_reserved_mem.end - crash_reserved_mem.start +1;
add_memmap(memmap_p, crash_reserved_mem.start, sz);
/* Create a backup region segment to store backup data*/
- sz = (BACKUP_SIZE + align - 1) & ~(align - 1);
+ sz = (BACKUP_SRC_SIZE + align - 1) & ~(align - 1);
tmp = xmalloc(sz);
memset(tmp, 0, sz);
info->backup_start = add_buffer(info, tmp, sz, sz, align,
diff --git a/kexec/arch/i386/crashdump-x86.h b/kexec/arch/i386/crashdump-x86.h
index de6c248..bb6ceb9 100644
--- a/kexec/arch/i386/crashdump-x86.h
+++ b/kexec/arch/i386/crashdump-x86.h
@@ -1,6 +1,7 @@
#ifndef CRASHDUMP_X86_H
#define CRASHDUMP_X86_H
+struct kexec_info;
int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline,
unsigned long max_addr, unsigned long min_base);
@@ -14,8 +15,8 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline,
#define CRASH_MAX_MEMORY_RANGES (MAX_MEMORY_RANGES + 2)
/* Backup Region, First 640K of System RAM. */
-#define BACKUP_START 0x00000000
-#define BACKUP_END 0x0009ffff
-#define BACKUP_SIZE (BACKUP_END - BACKUP_START + 1)
+#define BACKUP_SRC_START 0x00000000
+#define BACKUP_SRC_END 0x0009ffff
+#define BACKUP_SRC_SIZE (BACKUP_SRC_END - BACKUP_SRC_START + 1)
#endif /* CRASHDUMP_X86_H */
diff --git a/purgatory/arch/i386/crashdump_backup.c b/purgatory/arch/i386/crashdump_backup.c
index 39a1946..c619446 100644
--- a/purgatory/arch/i386/crashdump_backup.c
+++ b/purgatory/arch/i386/crashdump_backup.c
@@ -20,9 +20,7 @@
#include <stdint.h>
#include <string.h>
-
-#define BACKUP_REGION_SOURCE 0x00000000
-#define BACKUP_REGION_SIZE 0xa0000
+#include "../../../kexec/arch/i386/crashdump-x86.h"
/* Backup region start gets set after /proc/iomem has been parsed. */
/* We reuse the same code for x86_64 also so changing backup_start to
@@ -37,10 +35,10 @@ void crashdump_backup_memory(void)
{
void *dest, *src;
- src = (void *) BACKUP_REGION_SOURCE;
+ src = (void *) BACKUP_SRC_START;
if (backup_start) {
dest = (void *)(backup_start);
- memcpy(dest, src, BACKUP_REGION_SIZE);
+ memcpy(dest, src, BACKUP_SRC_SIZE);
}
}