yaboot/yaboot-relocatable-kernel.p...

22 lines
798 B
Diff

PPC64 relocatable kernels (built with CONFIG_RELOCATABLE=y) have the type of
ET_DYN. But yaboot code won't load the kernel if the ELF type is not
ET_EXEC. Attached patch adds support to yaboot to load relocatable kernels
also (ie load ET_DYN type also)
Signed-off-by: M. Mohan Kumar <mohan at in.ibm.com>
---
second/yaboot.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- yaboot-1.3.14.orig/second/yaboot.c
+++ yaboot-1.3.14/second/yaboot.c
@@ -1606,7 +1606,7 @@ is_elf64(loadinfo_t *loadinfo)
e->e_ident[EI_MAG3] == ELFMAG3 &&
e->e_ident[EI_CLASS] == ELFCLASS64 &&
e->e_ident[EI_DATA] == ELFDATA2MSB &&
- e->e_type == ET_EXEC &&
+ (e->e_type == ET_EXEC || e->e_type == ET_DYN) &&
e->e_machine == EM_PPC64);
}