kexec-tools/kexec-tools.ppc32-64bit-purgatory.patch

38 lines
1.3 KiB
Diff

---
kexec/arch/ppc64/crashdump-ppc64.h | 4 ++--
purgatory/Makefile | 7 ++++++-
2 files changed, 8 insertions(+), 3 deletions(-)
--- a/kexec/arch/ppc64/crashdump-ppc64.h
+++ b/kexec/arch/ppc64/crashdump-ppc64.h
@@ -6,9 +6,9 @@ int load_crashdump_segments(struct kexec
unsigned long max_addr, unsigned long min_base);
void add_usable_mem_rgns(unsigned long long base, unsigned long long size);
-#define PAGE_OFFSET 0xC000000000000000
+#define PAGE_OFFSET 0xC000000000000000ULL
#define KERNELBASE PAGE_OFFSET
-#define VMALLOCBASE 0xD000000000000000
+#define VMALLOCBASE 0xD000000000000000ULL
#define __pa(x) ((unsigned long)(x)-PAGE_OFFSET)
#define MAXMEM (-KERNELBASE-VMALLOCBASE)
--- a/purgatory/Makefile
+++ b/purgatory/Makefile
@@ -40,9 +40,14 @@ $(PURGATORY): CPPFLAGS+=-I$(srcdir)/purg
$(PURGATORY): LDFLAGS+=--no-undefined -nostartfiles -nostdlib -nodefaultlibs \
-e purgatory_start -r
+LDFLAGS_P = $(shell echo $(LDFLAGS) | sed -e 's/-lz//g')
+ifeq ($(ARCH),ppc64)
+LDFLAGS_P+=-melf64ppc -m64
+endif
+
$(PURGATORY): $(PURGATORY_OBJS)
$(MKDIR) -p $(@D)
- $(CC) $(LDFLAGS) -o $@ $^
+ $(CC) $(LDFLAGS_P) -o $@ $^
# $(LD) $(LDFLAGS) $(EXTRA_LDFLAGS) --no-undefined -e purgatory_start -r -o $@ $(PURGATORY_OBJS) $(UTIL_LIB)