Closed
Description
The problem functions (this occurs in every library, with the exception of librustrt):
librustc-c84825241471686d-0.6.so: rust_get_task [0x93E38F] in (optimized out: previous _ZN4main15_c4de63b748e03d3_06E) [0x93DFE0]
librustc-c84825241471686d-0.6.so: upcall_new_stack [0x93E3AF] in (optimized out: previous _ZN4main15_c4de63b748e03d3_06E) [0x93DFE0]
librustc-c84825241471686d-0.6.so: upcall_del_stack [0x93E3D1] in (optimized out: previous _ZN4main15_c4de63b748e03d3_06E) [0x93DFE0]
AFAIK this means it's not proper position independent code and uses absolute address references somewhere. I just can't figure out where/why.
This is confounding:
% scanelf -qT librustrt.so
scanelf: scanelf_file_textrels(): ELF librustrt.so has TEXTREL markings but doesnt appear to have any real TEXTREL's !?
Lots of info about this here: http://www.gentoo.org/proj/en/hardened/pic-fix-guide.xml?style=printable