[PATCH 2/2] Support R_PPC64_REL32 relocation type

gcc-4.4 compiler creates R_PPC64_REL32 relocation type in the ppc64
purgatory code. Add support to handle R_PPC64_REL32 relocation type.

Signed-off-by: M. Mohan Kumar <mo...@in.ibm.com>
---
 kexec/arch/ppc64/kexec-elf-rel-ppc64.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/kexec/arch/ppc64/kexec-elf-rel-ppc64.c 
b/kexec/arch/ppc64/kexec-elf-rel-ppc64.c
index 80543af..97aa34c 100644
--- a/kexec/arch/ppc64/kexec-elf-rel-ppc64.c
+++ b/kexec/arch/ppc64/kexec-elf-rel-ppc64.c
@@ -62,6 +62,10 @@ void machine_apply_elf_rel(struct mem_ehdr *ehdr, unsigned 
long r_type,
                *(uint64_t *)location = value;
                break;
 
+       case R_PPC64_REL32:
+               *(uint32_t *)location = value - (uint32_t)location;
+               break;
+
        case R_PPC64_TOC:
                *(uint64_t *)location = my_r2(ehdr);
                break;
-- 
1.6.2.5

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to