diff --git a/src/ld_so/linker.rs b/src/ld_so/linker.rs index 00ef617293f276bbf6a75bd69dd55a98f9ad860b..6b54a35a663cf8bd272ab74b99b58e4cdf03e6db 100644 --- a/src/ld_so/linker.rs +++ b/src/ld_so/linker.rs @@ -694,7 +694,7 @@ impl Linker { set_u64(tm as u64); } reloc::R_X86_64_DTPOFF64 => { - set_u64(rel.r_offset as u64); + set_u64((s - b) as u64); } reloc::R_X86_64_GLOB_DAT | reloc::R_X86_64_JUMP_SLOT => { set_u64(s as u64);