diff options
Diffstat (limited to 'arch/sparc64/kernel/module.c')
-rw-r--r-- | arch/sparc64/kernel/module.c | 5 |
1 files changed, 5 insertions, 0 deletions
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, | |||
143 | location[3] = v >> 0; | 143 | location[3] = v >> 0; |
144 | break; | 144 | break; |
145 | 145 | ||
146 | case R_SPARC_DISP32: | ||
147 | v -= (Elf64_Addr) location; | ||
148 | *loc32 = v; | ||
149 | break; | ||
150 | |||
146 | case R_SPARC_WDISP30: | 151 | case R_SPARC_WDISP30: |
147 | v -= (Elf64_Addr) location; | 152 | v -= (Elf64_Addr) location; |
148 | *loc32 = (*loc32 & ~0x3fffffff) | | 153 | *loc32 = (*loc32 & ~0x3fffffff) | |