1 2002-09-29 Ulrich Drepper <drepper@redhat.com>
3 * td_thr_tsd.c (td_thr_tsd): Read correct entry from pthread_keys
6 2002-09-28 Andreas Jaeger <aj@suse.de>
8 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Fix reference to dtv.
10 2002-09-24 Roland McGrath <roland@redhat.com>
12 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Fetch just the
13 individual members we need, not the whole structures.
15 2002-09-24 Ulrich Drepper <drepper@redhat.com>
17 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Change second
18 parameter to be the address of the link map in the inferior process.
19 * thread_db.h: Update prototype for td_thr_tls_get_addr.
21 2002-08-23 Ulrich Drepper <drepper@redhat.com>
23 * thread_dbP.h: Define LINUXTHREADS_VERSION.
24 * td_symbol_list.c (symbol_list_arr): Add LINUXTHREADS_VERSION string.
25 * td_ta_new.c (td_ta_new): After verifying the thread library is
27 * thread_db.h: Add new error TD_VERSION.
29 2002-08-21 Roland McGrath <roland@redhat.com>
31 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): __attribute_used__ ->
32 __attribute__ ((unused)) for arguments.
34 2002-08-07 Ulrich Drepper <drepper@redhat.com>
36 * thread_dbP.h: Define LINUXTHREADS_INITIAL_REPORT_EVENTS.
37 * td_thr_event_enable.c (td_thr_event_enable): If th->th_unique is
38 null write to __linuxthreads_initial_report_events.
39 * td_symbol_list.c (symbol_list_arr): Add
40 __linuxthreads_initial_report_events.
42 2002-07-16 Ulrich Drepper <drepper@redhat.com>
44 * td_thr_clear_event.c: Yet more changes to help with TLS-enabled
46 * td_thr_event_enable.c: Likewise.
47 * td_thr_event_getmsg.c: Likewise.
48 * td_thr_set_event.c: Likewise.
49 * td_thr_setfpregs.c: Likewise.
50 * td_thr_setgregs.c: Likewise.
51 * td_thr_tsd.c: Likewise.
52 * td_thr_validate.c: Likewise.
54 2002-07-15 Ulrich Drepper <drepper@redhat.com>
56 * td_ta_thr_iter.c: Some more changes to enable using TLS-enabled
58 * td_thr_event_enable.c: Likewise.
59 * td_thr_getfpregs.c: Likewise.
60 * td_thr_getgregs.c: Likewise.
62 2002-07-14 Ulrich Drepper <drepper@redhat.com>
64 * td_ta_map_id2thr.c: Begin fixing implementation for libpthread with
66 * td_ta_map_lwp2thr.c: Likewise.
67 * td_ta_thr_iter.c: Likewise.
68 * td_thr_get_info.c: Likewise.
70 2002-07-10 Ulrich Drepper <drepper@redhat.com>
72 * Versions [libthread_db] (GLIBC_2.3): Add td_thr_tls_get_addr.
74 2002-06-14 H.J. Lu <hjl@gnu.org>
76 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Don't include
77 "tls.h". Return TD_ERR if USE_TLS is not defined.
79 2002-06-12 Ulrich Drepper <drepper@redhat.com>
81 * td_thr_tls_get_addr.c: New file.
82 * thread_db.h: Add prototype for td_thr_tls_get_addr.
83 * Makefile (libthread_db-routines): Add td_thr_tls_get_addr.
85 2002-03-03 Andreas Jaeger <aj@suse.de>
87 * thread_dbP.h: Include <unistd.h> for prototypes of __libc_write.
89 2002-02-04 Ulrich Drepper <drepper@redhat.com>
91 * thread_dbP.h: Include descr.h instead of internals.h.
92 * td_ta_event_getmsg.c: Also include <linuxthreads/internals.h>.
93 * td_ta_map_id2thr.c: Likewise.
94 * td_ta_map_lwp2thr.c: Likewise.
95 * td_ta_thr_iter.c: Likewise.
96 * td_ta_tsd_iter.c: Likewise.
97 * td_thr_tsd.c: Likewise.
98 * td_thr_validate.c: Likewise.
100 2001-12-28 Andreas Jaeger <aj@suse.de>
102 * td_init.c (td_init): Don't use __FUNCTION__ as literal.
103 * td_log.c (td_log): Likewise.
104 * td_ta_delete.c (td_ta_delete): Likewise.
105 * td_ta_get_nthreads.c (td_ta_get_nthreads): Likewise.
106 * td_ta_get_ph.c (td_ta_get_ph): Likewise.
107 * td_ta_map_id2thr.c (td_ta_map_id2thr): Likewise.
108 * td_ta_map_lwp2thr.c (td_ta_map_lwp2thr): Likewise.
109 * td_ta_new.c (td_ta_new): Likewise.
110 * td_ta_clear_event.c (td_ta_clear_event): Likewise.
111 * td_ta_enable_stats.c (td_ta_enable_stats): Likewise.
112 * td_ta_event_addr.c (td_ta_event_addr): Likewise.
113 * td_ta_event_getmsg.c (td_ta_event_getmsg): Likewise.
114 * td_ta_get_stats.c (td_ta_get_stats): Likewise.
115 * td_ta_reset_stats.c (td_ta_reset_stats): Likewise.
116 * td_ta_set_event.c (td_ta_set_event): Likewise.
117 * td_ta_setconcurrency.c (td_ta_setconcurrency): Likewise.
118 * td_ta_thr_iter.c (td_ta_thr_iter): Likewise.
119 * td_ta_tsd_iter.c (td_ta_tsd_iter): Likewise.
120 * td_thr_clear_event.c (td_thr_clear_event): Likewise.
121 * td_thr_dbresume.c (td_thr_dbresume): Likewise.
122 * td_thr_dbsuspend.c (td_thr_dbsuspend): Likewise.
123 * td_thr_event_enable.c (td_thr_event_enable): Likewise.
124 * td_thr_event_getmsg.c (td_thr_event_getmsg): Likewise.
125 * td_thr_get_info.c (td_thr_get_info): Likewise.
126 * td_thr_getfpregs.c (td_thr_getfpregs): Likewise.
127 * td_thr_getgregs.c (td_thr_getgregs): Likewise.
128 * td_thr_getxregs.c (td_thr_getxregs): Likewise.
129 * td_thr_getxregsize.c (td_thr_getxregsize): Likewise.
130 * td_thr_set_event.c (td_thr_set_event): Likewise.
131 * td_thr_setfpregs.c (td_thr_setfpregs): Likewise.
132 * td_thr_setgregs.c (td_thr_setgregs): Likewise.
133 * td_thr_setprio.c (td_thr_setprio): Likewise.
134 * td_thr_setsigpending.c (td_thr_setsigpending): Likewise.
135 * td_thr_setxregs.c (td_thr_setxregs): Likewise.
136 * td_thr_sigsetmask.c (td_thr_sigsetmask): Likewise.
137 * td_thr_tsd.c (td_thr_tsd): Likewise.
138 * td_thr_validate.c (td_thr_validate): Likewise.
140 2001-04-12 Ulrich Drepper <drepper@redhat.com>
142 * td_ta_map_id2thr.c: If thread terminated return TD_NOTHR.
143 * td_thr_validate.c: Likewise.
145 2001-04-04 Ulrich Drepper <drepper@redhat.com>
147 * td_thr_getfpregs.c: If p_pid is zero use ps_getpid().
148 * td_thr_getgregs.c: Likewise.
149 * td_thr_setfpregs.c: Likewise.
150 * td_thr_setgregs.c: Likewise.
152 2001-03-20 Ulrich Drepper <drepper@redhat.com>
154 * Makefile (libthread_db-routines): Add td_symbol_list.
155 * Versions [libthread_db] (GLIBC_2.2.3): Add td_symbol_list.
156 * td_symbol_list.c: New file.
157 * thread_db.h: Add prototype for td_symbol_list.
158 * thread_dbP.h: Define symbol name indices.
159 Add prototype for td_lookup.
160 * td_ta_event_addr.c: Use td_lookup instead of directly using
161 ps_pglobal_lookup to find symbol address.
162 * td_ta_get_nthreads.c: Likewise.
163 * td_ta_new.c: Likewise.
165 2001-03-18 Ulrich Drepper <drepper@redhat.com>
167 * Makefile: When generating DSO link with libc_nonshared.a.
169 2000-08-01 Andreas Jaeger <aj@suse.de>
171 * Makefile (distribute): Add missing files.
173 2000-04-24 Mark Kettenis <kettenis@gnu.org>
175 * td_thr_get_info.c (td_thr_get_info): Set ti_state to
176 TD_THR_ACTIVE instead of TD_THR_RUN. If the thread is no longer
177 running but is still joinable, set it to TD_THR_ZOMBIE. Otherwise
178 set it to TD_THR_UNKNOWN.
180 2000-02-25 Andreas Jaeger <aj@suse.de>
182 * td_ta_thr_iter.c: Include <alloca.h> for prototype declaration.
183 * td_ta_tsd_iter.c: Likewise.
185 2000-01-20 Andreas Jaeger <aj@suse.de>
187 * td_thr_getgregs.c (td_thr_getgregs): Fix typo.
189 2000-01-19 Ulrich Drepper <drepper@cygnus.com>
191 * td_thr_getgregs.c: Correct size parameter of memset call.
193 1999-12-02 Ulrich Drepper <drepper@cygnus.com>
195 * proc_service.h: Fix typos in last added declaractions.
197 1999-12-01 Ulrich Drepper <drepper@cygnus.com>
199 * proc_service.h: Add ps_pstop, ps_pcontinue, ps_lstop, and
200 ps_lcontinue prototypes.
202 1999-11-23 Ulrich Drepper <drepper@cygnus.com>
204 * Makefile: Correct dependency for shared object.
206 1999-11-22 Ulrich Drepper <drepper@cygnus.com>
208 * td_ta_map_lwp2thr.c: Add missing brace in comparison.
210 * thread_dbP.h (LOG): Only print message if __td_debug is nonzero.
211 * td_init.c: Add __td_debug.
213 1999-11-12 Ulrich Drepper <drepper@cygnus.com>
215 * td_ta_thr_iter.c: Start copying list of descriptors from right
216 position in target process.
218 * td_ta_thr_iter.c: Fix loop starting point over all but main and
221 * td_ta_thr_iter.c: Read descriptors for main and manager thread
222 special since after this we can assume that no new threads will be
223 created anymore (at least in the gdb implementation).
225 * Makefile: Define version correctly.
227 1999-11-10 Ulrich Drepper <drepper@cygnus.com>
229 * td_ta_map_lwp2thr.c: If p_pid field is zero, this is before the
230 thread library is initialized and we get the PID from the
233 1999-11-08 Ulrich Drepper <drepper@cygnus.com>
235 * td_thr_get_info.c: Make sure ti_lid is never zero.
237 * proc_service.h: Add ps_getpid prototype.
239 1999-11-03 Ulrich Drepper <drepper@cygnus.com>
241 * thread_dbP.h (ta_ok): New function.
242 * td_ta_new.c: Add new handle to list.
243 * td_ta_delete.c: Remove handle from list.
244 * td_ta_clear_event.c: Use ta_ok to check for correct ta parameter.
245 * td_ta_enable_stats.c: Likewise.
246 * td_ta_event_addr.c: Likewise.
247 * td_ta_event_getmsg.c: Likewise.
248 * td_ta_get_nthreads.c: Likewise.
249 * td_ta_get_ph.c: Likewise.
250 * td_ta_get_stats.c: Likewise.
251 * td_ta_map_id2thr.c: Likewise.
252 * td_ta_map_lwp2thr.c: Likewise.
253 * td_ta_reset_stats.c: Likewise.
254 * td_ta_set_event.c: Likewise.
255 * td_ta_setconcurrency.c: Likewise.
256 * td_ta_thr_iter.c: Likewise.
258 * td_ta_tsd_iter.c: Optimize memory retrieving.
260 * Versions: New file.
262 * td_thr_get_info.c (td_thr_get_info): Initialize ti_traceme.
264 1999-11-02 Ulrich Drepper <drepper@cygnus.com>
266 * td_ta_thr_iter.c (td_ta_thr_iter): Optimize a bit. Read all
269 * thread_dbP.h (struct th_thragent): Add pthread_handle_num.
270 * td_ta_new.c: Initialize pthread_handle_num.
271 * td_ta_event_getmsg.c: If last event was already reported search
272 for another unreported event.
274 * td_thr_get_info.c (td_thr_get_info): Initialize ti_events.
276 * Makefile (libthread_db-routines): Add td_ta_set_event,
277 td_ta_event_getmsg, and td_ta_clear_event.
278 * td_ta_clear_event.c: New file.
279 * td_ta_event_getmsg.c: New file.
280 * td_ta_new.c: Get address of __pthread_last_event in target.
281 * td_ta_set_event.c: Don't overwrite old mask, set additional bits.
282 * td_thr_set_event.c: Likewise.
283 * td_thr_clear_event.c: Implement.
284 * thread_db.h: Declare td_ta_clear_event and td_ta_event_getmsg.
285 * thread_dbP.h (struct td_thragent): Add pthread_last_event.
287 * td_ta_new.c: Don't test for __pthread_threads_debug. Get address
288 of __pthread_threads_events and fail if this is not possible.
289 * td_ta_event_addr.c: Implement.
290 * td_thr_event_enable.c: Implement.
291 * td_thr_event_getmsg.c: Implement.
292 * td_thr_set_event.c: Implement.
293 * td_ta_set_event.c: New file.
294 * thread_db.h (td_eventbuf_t): Define.
295 Declare td_ta_set_event.
296 * thread_dbP.h (struct td_thragent): Add pthread_threads_eventsp.
298 * td_thr_getfpregs.c: For terminated threads return empty structure.
299 * td_thr_getgregs.c: Likewise.
300 * td_thr_setfpregs.c: Likewise.
301 * td_thr_setgregs.c: Likewise.
303 1999-11-01 Ulrich Drepper <drepper@cygnus.com>
305 * thread_db.h: Shuffle types around to make things work for gdb.
306 * thread_dbP.h: Include proc_service.h before thread_db.h.
308 * thread_db.h: It's TD_NOLIBTHREAD, not TD_LIBTHREAD.
309 * td_ta_new.c: Likewise.
311 1999-10-14 Ulrich Drepper <drepper@cygnus.com>
313 * td_ta_new.c: p_startfct does not exist anymore.
315 * td_thr_get_info.c: Always initialize start function.
317 * td_ta_thr_iter.c: Don't return threads which exited (but are not
320 * td_thr_validate.c: Don't skip manager thread.
322 1999-10-13 Ulrich Drepper <drepper@cygnus.com>
324 * td_ta_thr_iter.c: Use size of descriptor from *TA.
325 Don't return manager thread before it's actually running.
326 Actually use state parameter to distingusih at least a few states.
328 * td_thr_get_info.c: Handle manager thread special. Fill in ti_lid,
329 ti_state, and ti_startfunc fields.
331 1999-10-12 Andreas Jaeger <aj@suse.de>
333 * thread_dbP.h: Include <string.h> for strlen declaration. Remove
334 __libc_write prototype since this is already declared in
335 linuxthreads/internals.h.
337 1999-10-11 Ulrich Drepper <drepper@cygnus.com>
339 * thread_db.h: Fix comment for ti_type.
341 * td_thr_get_info.c: Initialize ti_type field.
343 * td_ta_thr_iter.c: Also report the manager thread.
345 1999-10-08 Andreas Jaeger <aj@suse.de>
347 * thread_db.h: Fix typos in comments.
349 * td_ta_get_nthreads.c (td_ta_get_nthreads): Don't hardcode
350 libpthread library name, get it from <gnu/lib-names.h> instead.
351 * td_ta_new.c (td_ta_new): Likewise.
353 1999-10-08 Ulrich Drepper <drepper@cygnus.com>
355 * shlib-versions: New file.
357 1999-10-07 Ulrich Drepper <drepper@cygnus.com>
359 * Makefile: New file.
360 * proc_service.h: New file.
361 * td_init.c: New file.
362 * td_log.c: New file.
363 * td_ta_delete.c: New file.
364 * td_ta_enable_stats.c: New file.
365 * td_ta_event_addr.c: New file.
366 * td_ta_get_nthreads.c: New file.
367 * td_ta_get_ph.c: New file.
368 * td_ta_get_stats.c: New file.
369 * td_ta_map_id2thr.c: New file.
370 * td_ta_map_lwp2thr.c: New file.
371 * td_ta_new.c: New file.
372 * td_ta_reset_stats.c: New file.
373 * td_ta_setconcurrency.c: New file.
374 * td_ta_thr_iter.c: New file.
375 * td_ta_tsd_iter.c: New file.
376 * td_thr_clear_event.c: New file.
377 * td_thr_dbresume.c: New file.
378 * td_thr_dbsuspend.c: New file.
379 * td_thr_event_enable.c: New file.
380 * td_thr_event_getmsg.c: New file.
381 * td_thr_get_info.c: New file.
382 * td_thr_getfpregs.c: New file.
383 * td_thr_getgregs.c: New file.
384 * td_thr_getxregs.c: New file.
385 * td_thr_getxregsize.c: New file.
386 * td_thr_set_event.c: New file.
387 * td_thr_setfpregs.c: New file.
388 * td_thr_setgregs.c: New file.
389 * td_thr_setprio.c: New file.
390 * td_thr_setsigpending.c: New file.
391 * td_thr_setxregs.c: New file.
392 * td_thr_sigsetmask.c: New file.
393 * td_thr_tsd.c: New file.
394 * td_thr_validate.c: New file.
395 * thread_db.h: New file.
396 * thread_dbP.h: New file.