Red Hat Bugzilla – Bug 146710
pthread_getspecific gets non-NULL value for new key
Last modified: 2007-11-30 17:07:06 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.5)
Description of problem:
Memory locations returned by pthread_getspecific are not zero'ed
across pthread_key_delete/pthread_key_create calls, as stated in the
documentation "The value initialized associated with the returned key
The result is that a new key returned by thread_key_create /
pthread_getspecific will not be initialized to zero if:
((the area was freed by a pthread_key_delete) and
(when freed the pthread_getspecific area was not NULL))
This problem happens on AS 3 when NPTL is not used
The problem does not recreate on AS 3 when NPTL is used
(LD_ASSUME_KERNEL=2.4.20 or not setting LAK).
The problem was does not appear to happen on AS 2.1
Please see the Sample_Run (attached below) for more details.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Extract attached files
2. Build program by running "make"
3. Run program using NPTL: "LD_ASSUME_KERNEL=2.4.20 ./getspecific" (works)
4. Run program without NPTL: "LD_ASSUME_KERNEL=2.4.1 ./getspecific"
Actual Results: see attached file "Sample_Run"
Created attachment 110465 [details]
sample program with build & run instructions
For RHEL4 fixed in glibc-2.3.4-2.4.
For RHEL3 fixed in glibc-2.3.2-95.32.
This patch fixes the test case and the real program it came from.
- When should the offical RHEL3 glibc-2.3.2-95.32 be available?
hrmm... been a while and still no errata released, when should
an offical RHEL3 binary be available?
so, it's been a few months... and glibc-2.3.2-95.32 is still not available
as an errata for RHEL3, what's blocking this?
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.