[Bug dynamic-link/21041] Fix for bug 20019 causes linker errors for shared libraries using longjmp
hjl.tools at gmail dot com
sourceware-bugzilla@sourceware.org
Thu Jan 12 23:07:00 GMT 2017
https://sourceware.org/bugzilla/show_bug.cgi?id=21041
--- Comment #6 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to H.J. Lu from comment #5)
> Created attachment 9750 [details]
> Something like this
I take this back. Does this testcase ever work after
commit ec2a88b3c659ad4f5a662ca289edae4f0dc19d88
Author: Roland McGrath <roland@hack.frob.com>
Date: Fri Feb 6 10:53:27 2015 -0800
Clean up NPTL longjmp to be compat-only.
I got
(gdb) r
Starting program: /export/home/hjl/bugs/libc/pr21041/main-dynamic
warning: Unable to find libthread_db matching inferior's thread library, thread
debugging will not be available.
Program received signal SIGSEGV, Segmentation fault.
0x0000000000000000 in ?? ()
(gdb) bt
#0 0x0000000000000000 in ?? ()
#1 0x00007ffff741928e in bar ()
#2 0x00007ffff7bda2de in foo () from ./libfoo.so
#3 0x00000000004005f9 in main ()
(gdb)
The problem is
(gdb) disass longjmp_resolve
Dump of assembler code for function longjmp_resolve:
0x00007ffff79cc350 <+0>: mov 0x208c91(%rip),%rax #
0x7ffff7bd4fe8
0x00007ffff79cc357 <+7>: retq
which returns the address after relocating libpthread.so with
000000217fe8 005400000006 R_X86_64_GLOB_DAT 0000000000000000
__libc_longjmp@GLIBC_PRIVATE + 0
This is the same problem which my fix for PR 20019 tries to detect.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Glibc-bugs
mailing list