I got through this problem after several hours of debugging the ELF format and the purgatory code. The symbol information for this variables appears to point to a table not allowed by kexec. By adding the compiler flag "no-zero-initialized-in-bss", I was allowed to install the kernel.
I got through this problem after several hours of debugging the ELF format and the purgatory code. The symbol information for this variables appears to point to a table not allowed by kexec. By adding the compiler flag "no-zero- initialized- in-bss" , I was allowed to install the kernel.
diff -r 5237ea698c92 kexec-tools- 2.0.1/purgatory /Makefile tools-2. 0.1/purgatory/ Makefile tools-2. 0.1/purgatory/ Makefile =$(PURGATORY_ EXTRA_CFLAGS) \
$($(ARCH) _PURGATORY_ EXTRA_CFLAGS) \ initialized- in-bss
--- a/kexec-
+++ b/kexec-
@@ -47,7 +47,7 @@
$(PURGATORY): CC=$(TARGET_CC)
$(PURGATORY): CFLAGS+
- -Os -fno-builtin -ffreestanding
+ -Os -fno-builtin -ffreestanding -fno-zero-
$(PURGATORY): CPPFLAGS= $($(ARCH) _PURGATORY_ EXTRA_CFLAGS) \ (srcdir) /purgatory/ include \
-I$