summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/module_64.c
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2014-03-18 08:06:28 +0100
committerAnton Blanchard <anton@samba.org>2014-04-23 02:05:28 +0200
commitd247da0a8ebcc4ebb4c766487de6af5df560adac (patch)
tree8538729d84d265a2ed9a4c2c553797c367765f9d /arch/powerpc/kernel/module_64.c
parentpowerpc: make module stub code endian independent (diff)
downloadlinux-d247da0a8ebcc4ebb4c766487de6af5df560adac.tar.xz
linux-d247da0a8ebcc4ebb4c766487de6af5df560adac.zip
powerpc: modules implement R_PPC64_TOCSAVE relocation.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'arch/powerpc/kernel/module_64.c')
-rw-r--r--arch/powerpc/kernel/module_64.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/module_64.c b/arch/powerpc/kernel/module_64.c
index 7c16b2eefd95..a8694d462079 100644
--- a/arch/powerpc/kernel/module_64.c
+++ b/arch/powerpc/kernel/module_64.c
@@ -454,6 +454,14 @@ int apply_relocate_add(Elf64_Shdr *sechdrs,
*location = value - (unsigned long)location;
break;
+ case R_PPC64_TOCSAVE:
+ /*
+ * Marker reloc indicates we don't have to save r2.
+ * That would only save us one instruction, so ignore
+ * it.
+ */
+ break;
+
default:
printk("%s: Unknown ADD relocation: %lu\n",
me->name,