From 901b68c1855e5124b1999be1e9f7848581cc24b5 Mon Sep 17 00:00:00 2001 From: Peter Wemm Date: Tue, 27 Sep 2005 18:18:23 +0000 Subject: [PATCH] Add a bare minimum (but wrong) R_X86_64_JMP_SLOT relocation type for kernel modules. We actually need to include any addends and the symbol offset value, but for gcc/binutils didn't set it anywhere I've found on 'cc -fpic -shared' kernel modules. --- sys/amd64/amd64/elf_machdep.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/amd64/amd64/elf_machdep.c b/sys/amd64/amd64/elf_machdep.c index 11a71a5f3876..7396503a56ef 100644 --- a/sys/amd64/amd64/elf_machdep.c +++ b/sys/amd64/amd64/elf_machdep.c @@ -195,6 +195,7 @@ elf_reloc_internal(linker_file_t lf, Elf_Addr relocbase, const void *data, break; case R_X86_64_GLOB_DAT: /* S */ + case R_X86_64_JMP_SLOT: /* XXX need addend + offset */ addr = lookup(lf, symidx, 1); if (addr == 0) return -1;