Handle unloading of DSO with a unique symbol definition.
[glibc.git] / nptl_db / ChangeLog
blob1ade1968a7d699066d4998fcefc1fa8d7129ac54
1 2009-05-25  Aurelien Jarno  <aurelien@aurel32.net>
3         [BZ #10200]
4         * db-symbols.awk: Use the last field for the symbol name instead
5         of the 8th one.
7 2009-03-19  Roland McGrath  <roland@redhat.com>
9         * td_symbol_list.c (DB_LOOKUP_NAME, DB_LOOKUP_NAME_TH_UNIQUE):
10         Use STRINGIFY macro in place of #argument.
12 2009-02-27  Roland McGrath  <roland@redhat.com>
14         * td_symbol_list.c (symbol_list_arr): Move initializer guts to ...
15         * db-symbols.h: ... here, new file.
16         * db-symbols.awk: New file.
17         * Makefile (distribute): Add them.
18         ($(objpfx)db-symbols.out): New target.
19         (tests): Depend on it.
20         ($(objpfx)db-symbols.v.i): New dependent rule.
22 2009-02-06  Ulrich Drepper  <drepper@redhat.com>
24         * td_thr_get_info.c (td_thr_get_info): Initialize schedpolicy in
25         the special case [Coverity CID 251].
27 2008-03-25  Roland McGrath  <roland@redhat.com>
29         [BZ #5983]
30         * structs.def: Add pid field of struct pthread.
31         * td_ta_thr_iter.c (iterate_thread_list): Take new arg MATCH_PID.
32         If a thread's pid does not match nor is < 0 while its tid matches
33         nor is < 0 and equal to -MATCH_PID, ignore it.
34         * td_thr_validate.c (td_thr_validate): Validate thread's pid/tid.
36 2007-05-16  Roland McGrath  <roland@redhat.com>
38         * td_thr_get_info.c: Fake the results for TH->th_unique == 0.
39         * td_thr_validate.c: Likewise.
40         * td_thr_setgregs.c: Likewise.
41         * td_thr_setfpregs.c: Likewise.
42         * td_thr_getgregs.c: Likewise.
43         * td_thr_getfpregs.c: Likewise.
44         * td_thr_tlsbase.c: Likewise.
46         * structs.def: Add DB_VARIABLE (__nptl_initial_report_events).
47         * db_info.c: Add necessary declaration.
48         * td_thr_event_enable.c: Set __nptl_initial_report_events too.
50         * td_ta_thr_iter.c (iterate_thread_list): Make FAKE_EMPTY bool.
51         Use th_unique=0 in fake descriptor before initialization.
53         * td_ta_map_lwp2thr.c (__td_ta_lookup_th_unique): New function, broken
54         out of ...
55         (td_ta_map_lwp2thr): ... here, call it.  But don't before __stack_user
56         is initialized, then fake a handle with th_unique=0.
57         * thread_dbP.h: Declare it.
59 2006-10-26  Pete Eberlein  <eberlein@us.ibm.com>
61         * nptl_db/db_info.c [TLS_DTV_AT_TP]: Fixed size init for dtvp
62         to sizeof a pointer, instead of sizeof the union.
64 2006-10-27  Ulrich Drepper  <drepper@redhat.com>
66         * structs.def: USE_TLS support is now default.
68 2006-02-03  Roland McGrath  <roland@redhat.com>
70         * structs.def: Add a descriptor for pointer.val field of dtv_t.
71         * td_thr_tlsbase.c (td_thr_tlsbase): Extract pointer.val field from
72         DTV slot.
74 2004-09-09  Roland McGrath  <roland@redhat.com>
76         * td_ta_map_lwp2thr.c (td_ta_map_lwp2thr): Don't abort if inferior's
77         descriptor is bogus.
79 2004-05-27  Roland McGrath  <roland@redhat.com>
81         * td_thr_validate.c: When we find no threads and the inferior appears
82         uninitialized, validate the main thread as a special case.
84 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
86         * thread_dbP.h (LOG): Use write instead of __libc_write.
88 2004-04-03  Ulrich Drepper  <drepper@redhat.com>
90         * td_ta_set_event.c (td_ta_set_event): Initialize copy to avoid
91         warnings.
93         * td_ta_thr_iter.c (td_ta_thr_iter): Initialize list to avoid warning.
94         * td_ta_clear_event.c (td_ta_clear_event): Initialize eventmask to
95         avoid warning.
96         * td_ta_set_event.c (td_ta_set_event): Likewise.
98 2004-03-24  Roland McGrath  <roland@redhat.com>
100         * fetch-value.c (_td_locate_field): Cast DB_DESC_OFFSET to int32_t.
101         * thread_dbP.h (DB_DESC_OFFSET): Remove cast from definition.
103 2004-03-13  Jakub Jelinek  <jakub@redhat.com>
105         * db_info.c: Don't use TLS_TP_OFFSET in the #if, but
106         TLS_TCB_SIZE == 0 ?: in the DESC macro.
108 2004-03-12  Roland McGrath  <roland@redhat.com>
110         * db_info.c [TLS_DTV_AT_TP && TLS_TP_OFFSET > 0]
111         (_thread_db_pthread_dtvp): Define differently for this case (PowerPC).
113 2003-12-11  Ulrich Weigand  <uweigand@de.ibm.com>
115         * db_info.c (REGISTER): Add bit size of thread register as second
116         parameter to REGISTER macro.
118 2003-12-02  Roland McGrath  <roland@redhat.com>
120         * thread_dbP.h (DB_FUNCTION): New macro.
121         * structs.def: Use it for __nptl_create_event and __nptl_death_event.
122         * db_info.c (DB_FUNCTION): New macro.
123         * td_symbol_list.c (DB_FUNCTION): New macro, prepend "." to symbol
124         name under [HAVE_ASM_GLOBAL_DOT_NAME].
125         (td_lookup) [HAVE_ASM_GLOBAL_DOT_NAME]: If lookup fails with PS_NOSYM
126         and name starts with a dot, try it without the dot.
128 2003-09-08  Roland McGrath  <roland@redhat.com>
130         * td_thr_get_info.c (td_thr_get_info): Cast th_unique to thread_t.
132 2003-08-22  Roland McGrath  <roland@redhat.com>
134         * fetch-value.c (_td_check_sizeof, _td_locate_field): Return
135         TD_NOCAPAB for PS_NOSYM, instead of vanilla TD_ERR.
136         * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Return TD_NOAPLIC when
137         DB_GET_FIELD returns TD_NOCAPAB.
139         * thread_db.h (td_thr_tls_get_addr): Use psaddr_t in signature.
140         * structs.def [USE_TLS]: Add DB_STRUCT_FIELD (link_map, l_tls_modid).
141         * db_info.c (link_map): Typedef it.
142         * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Rewritten.
144 2003-08-14  Roland McGrath  <roland@redhat.com>
146         * thread_dbP.h: Mostly rewritten with many new macros and decls.
147         * td_ta_new.c (td_ta_new): Don't cache a lot of symbol values.
148         * structs.def: New file.
149         * db_info.c: New file.
150         * td_symbol_list.c (symbol_list_arr): Define with structs.def macros.
151         * td_ta_clear_event.c: Rewritten.
152         * td_ta_event_addr.c: Rewritten.
153         * td_ta_event_getmsg.c: Rewritten.
154         * td_ta_get_nthreads.c: Rewritten.
155         * td_ta_map_lwp2thr.c: New file.
156         * td_ta_set_event.c: Rewritten.
157         * td_ta_thr_iter.c: Rewritten.
158         * td_ta_tsd_iter.c: Rewritten.
159         * td_thr_clear_event.c: Rewritten.
160         * td_thr_event_enable.c: Rewritten.
161         * td_thr_event_getmsg.c: Rewritten.
162         * td_thr_get_info.c: Rewritten.
163         * td_thr_getfpregs.c: Rewritten.
164         * td_thr_getgregs.c: Rewritten.
165         * td_thr_set_event.c: Rewritten.
166         * td_thr_setfpregs.c: Rewritten.
167         * td_thr_setgregs.c: Rewritten.
168         * td_thr_tlsbase.c: Rewritten.
169         * td_thr_tsd.c: Rewritten.
170         * td_thr_validate.c: Rewritten.
171         * Makefile (distribute): Add them.
172         * fetch-value.c: New file.
173         * Makefile (libthread_db-routines): Add it.
175         * thread_db.h (td_err_e): Comment fix.
177 2003-08-05  Roland McGrath  <roland@redhat.com>
179         * thread_dbP.h (td_lookup): Add attribute_hidden to decl.
181 2003-08-04  Roland McGrath  <roland@redhat.com>
183         * td_ta_clear_event.c (td_ta_clear_event): Fix sizes in ps_* calls.
185 2003-06-23  Roland McGrath  <roland@redhat.com>
187         * proc_service.h: Cosmetic and comment fixes.
189 2003-06-19  Roland McGrath  <roland@redhat.com>
191         * td_thr_event_enable.c (td_thr_event_enable): Use proper type `bool'
192         for value written into inferior's `report_events'.
194 2003-03-18  Roland McGrath  <roland@redhat.com>
196         * td_thr_event_getmsg.c (td_thr_event_getmsg): Splice the thread out
197         of the ->nextevent linkage.
199         * td_ta_event_getmsg.c (td_ta_event_getmsg): Runtime error instead of
200         assert for reading TD_EVENT_NONE.  Clear the event buffer after
201         reading it.  Add a sanity check for foo->nextevent = foo.
203 2003-03-15  Roland McGrath  <roland@redhat.com>
205         * thread_db.h (td_err_e): Add TD_NOTLS and TD_TLSDEFER.
206         (td_thr_tlsbase): Declare it.
207         * td_thr_tlsbase.c: New file.
208         * Makefile (libthread_db-routines): Add it.
209         * Versions (libthread_db: GLIBC_2.3.3): New set, add td_thr_tlsbase.
210         * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Use td_thr_tlsbase.
212 2003-03-14  Roland McGrath  <roland@redhat.com>
214         * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Use `header.' prefix.
216 2003-03-10  Roland McGrath  <roland@redhat.com>
218         * td_ta_thr_iter.c (iterate_thread_list): Don't use `header.data.'
219         prefix for `struct pthread' members.
220         * td_thr_validate.c (check_thread_list): Likewise.
221         * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Likewise.
223 2003-03-03  Roland McGrath  <roland@redhat.com>
225         * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Handle TLS_DTV_AT_TP.
227 2003-02-15  Ulrich Drepper  <drepper@redhat.com>
229         * td_symbol_list.c: New symbol name for SYM_PTHREAD_NTHREADS.
231 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
233         * td_ta_event_getmsg.c: Include assert.h.
235 -2003-01-05  Ulrich Drepper  <drepper@redhat.com>
237         * Makefile (libthread_db.so-no-z-defs): Define.
239 2003-01-03  Roland McGrath  <roland@redhat.com>
241         * td_thr_setgregs.c (td_thr_setgregs): *_BIT -> *_BITMASK
242         * td_thr_setfpregs.c (td_thr_setfpregs): Likewise.
243         * td_thr_get_info.c (td_thr_get_info): Likewise.
244         * td_thr_getgregs.c (td_thr_getgregs): Likewise.
245         * td_thr_getfpregs.c (td_thr_getfpregs): Likewise.
246         * td_ta_thr_iter.c (iterate_thread_list): Likewise.
248 2002-12-12  Roland McGrath  <roland@redhat.com>
250         * td_ta_thr_iter.c (iterate_thread_list): Handle special case of
251         uninitialized __stack_user (zeros), hard-wire just the main thread.
253         * td_thr_get_info.c (td_thr_get_info): Fix ti_lid initialization.
255 2002-12-06  Roland McGrath  <roland@redhat.com>
257         * td_ta_event_getmsg.c (td_ta_event_getmsg): Write the NEXT pointer
258         into the inferior's __pthread_last_event variable, not a word from
259         an inferior address used in the parent.  Pass the address of a
260         null word to ps_pdwrite, not a null pointer.
262 2002-12-04  Roland McGrath  <roland@redhat.com>
264         * td_thr_get_info.c (td_thr_get_info): ti_tid is pthread_t, not a PID.
266         * thread_db.h (td_thrinfo_t): Comment fix.
268         * td_ta_map_lwp2thr.c: Moved to ../nptl/sysdeps/i386/.
270 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
272         * td_ta_thr_iter.c (iterate_thread_list): At end of iteration read
273         pointer to the next element from inferior.
275 2002-12-02  Roland McGrath  <roland@redhat.com>
277         * td_symbol_list.c (symbol_list_arr): pthread_keys -> __pthread_keys
279         * td_ta_map_lwp2thr.c (td_ta_map_lwp2thr): Fetch inferior registers to
280         see its %gs value, not our own.