From 06a1be167ea77c436657587e26cd4d7d6401784c Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Fri, 12 May 2006 12:45:50 -0700 Subject: [SPARC]: Handle UNWIND_INFO properly. For sparc32 we need R_SPARC_UA32 relocation support, for sparc64 we need the handle R_SPARC_DISP32 relocations. Based upon reports and initial patch by Martin Habets. Signed-off-by: David S. Miller --- arch/sparc64/kernel/module.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'arch/sparc64/kernel/module.c') diff --git a/arch/sparc64/kernel/module.c b/arch/sparc64/kernel/module.c index 6c83e372f75d..579871527699 100644 --- a/arch/sparc64/kernel/module.c +++ b/arch/sparc64/kernel/module.c @@ -143,6 +143,11 @@ int apply_relocate_add(Elf64_Shdr *sechdrs, location[3] = v >> 0; break; + case R_SPARC_DISP32: + v -= (Elf64_Addr) location; + *loc32 = v; + break; + case R_SPARC_WDISP30: v -= (Elf64_Addr) location; *loc32 = (*loc32 & ~0x3fffffff) | -- cgit v1.2.1