Comment 1 for bug 576077

Revision history for this message
Roger R. Cruz (roger-cruz-virtualcomputer) wrote :

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
--- a/kexec-tools-2.0.1/purgatory/Makefile
+++ b/kexec-tools-2.0.1/purgatory/Makefile
@@ -47,7 +47,7 @@
 $(PURGATORY): CC=$(TARGET_CC)
 $(PURGATORY): CFLAGS+=$(PURGATORY_EXTRA_CFLAGS) \
         $($(ARCH)_PURGATORY_EXTRA_CFLAGS) \
- -Os -fno-builtin -ffreestanding
+ -Os -fno-builtin -ffreestanding -fno-zero-initialized-in-bss

 $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \
    -I$(srcdir)/purgatory/include \