Bug 1080656
Summary: | [RHEL6] Can't access TLS variables in statically linked binaries | ||||||
---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Ben Woodard <woodard> | ||||
Component: | gdb | Assignee: | Sergio Durigan Junior <sergiodj> | ||||
Status: | CLOSED ERRATA | QA Contact: | qe-baseos-tools-bugs | ||||
Severity: | medium | Docs Contact: | |||||
Priority: | unspecified | ||||||
Version: | 6.6 | CC: | jan.kratochvil, mcermak, mfranc, patrickm, tgummels | ||||
Target Milestone: | rc | ||||||
Target Release: | --- | ||||||
Hardware: | x86_64 | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | gdb-7.2-72.el6 | Doc Type: | Bug Fix | ||||
Doc Text: |
Cause: GDB could not correctly access TLS (Thread Local Storage) data on statically linked binaries.
Consequence: The user was not able to inspect TLS data on the program being debugged, if this program was linked statically.
Fix: GDB now correctly accesses TLS data on statically linked binaries.
Result: The user can now inspect the TLS data on a statically linked binary.
|
Story Points: | --- | ||||
Clone Of: | |||||||
: | 1080657 1080660 (view as bug list) | Environment: | |||||
Last Closed: | 2014-10-14 07:28:13 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Bug Depends On: | |||||||
Bug Blocks: | 1005265 | ||||||
Attachments: |
|
Description
Ben Woodard
2014-03-25 21:37:39 UTC
Created attachment 878704 [details]
reproducer
The way that we arrived at this problem was trying to diagnose a suspected problem with libthread_db's calculation of the address to TLS for OpenMP C/C++ threadprivate variables in statically linked binaries. Therefore, once GDB is able to properly load libthread_db there may be another problem with libthread_db's ability to return a correct address. glibc-RFC patch for GDB: TLS variables access for -static -lpthread executables https://sourceware.org/ml/libc-help/2014-03/msg00024.html [patch] Fix gdbserver qGetTLSAddr for x86_64 -m32 https://sourceware.org/ml/gdb-patches/2014-04/msg00154.html Message-ID: <20140410114901.GA16411.net> [patch] Fix TLS access for -static -pthread https://sourceware.org/ml/gdb-patches/2014-04/msg00155.html Message-ID: <20140410115204.GB16411.net> commit 9e0aa64f5510861b2517c5841b59adde8e423540 Author: Jan Kratochvil <jan.kratochvil> Fix gdbserver qGetTLSAddr for x86_64 -m32 commit 5876f5032f60c45c4bd19e7ea7d0c14d0346b93e Author: Jan Kratochvil <jan.kratochvil> Fix TLS access for -static -pthread Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2014-1534.html |