blob: 9964b4dd4d3423d79bf5ca587154976beb62ab28 [file] [log] [blame]
yuezonghe824eb0c2024-06-27 02:32:26 -070012006-04-25 Bernhard Fischer <rep.nop@aon.at>
2
3 * td_init.c (__td_debug): Only declare when NDEBUG is undefined.
4
52006-04-25 Bernhard Fischer <rep.nop@aon.at>
6
7 * thread_dbP.h: Fix Indices typo in comment.
8
92005-11-02 Daniel Jacobowitz <dan@codesourcery.com>
10
11 * td_ta_clear_event.c (td_ta_clear_event): Correct arguments to
12 sizeof.
13 * td_ta_set_event.c (td_ta_set_event): Likewise.
14 * td_thr_clear_event.c (td_thr_clear_event): Likewise.
15 * td_thr_set_event.c (td_thr_set_event): Likewise.
16
172005-01-09 Andreas Jaeger <aj@suse.de>
18
19 * td_thr_tlsbase.c (td_thr_tlsbase): Adjust for dtv change.
20
212004-05-01 Jakub Jelinek <jakub@redhat.com>
22
23 * thread_dbP.h (LOG): Use write instead of __libc_write.
24
252004-03-13 Jakub Jelinek <jakub@redhat.com>
26
27 * td_thr_tlsbase.c: Remove dl-tls.h include. Don't use
28 TLS_TP_OFFSET in the #if, but TLS_TCB_SIZE == 0 ?:.
29
302004-03-12 Roland McGrath <roland@redhat.com>
31
32 * td_thr_tlsbase.c [TLS_DTV_AT_TP && TLS_TP_OFFSET > 0]: Handle this
33 case (PowerPC) differently.
34
352003-11-25 Roland McGrath <roland@redhat.com>
36
37 * td_symbol_list.c (symbol_list_arr) [HAVE_ASM_GLOBAL_DOT_NAME]:
38 Prepend "." to symbol names for functions.
39
402003-08-18 Daniel Jacobowitz <drow@mvista.com>
41
42 * td_thr_getfpregs.c (td_thr_getfpregs): Use the main thread if
43 the descriptor is uninitialized.
44 * td_thr_getgregs.c (td_thr_getgregs): Likewise.
45
462003-03-15 Roland McGrath <roland@redhat.com>
47
48 * thread_db.h (td_err_e): Add TD_NOTLS and TD_TLSDEFER.
49 (td_thr_tlsbase): Declare it.
50 * td_thr_tlsbase.c: New file.
51 * Makefile (libthread_db-routines): Add it.
52 * Versions (libthread_db: GLIBC_2.3.3): New set, add td_thr_tlsbase.
53 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Use td_thr_tlsbase.
54
552003-02-27 Roland McGrath <roland@redhat.com>
56
57 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Handle TLS_DTV_AT_TP.
58
59 * td_ta_thr_iter.c (handle_descr) [!defined USE_TLS || !TLS_DTV_AT_TP]:
60 Conditionalize p_header use on this.
61
622003-01-29 Roland McGrath <roland@redhat.com>
63
64 * td_ta_new.c (td_ta_new): Cap the `sizeof_descr' value read from the
65 inferior at `sizeof (struct _pthread_descr_struct)', since we use it
66 as a length in copies to our own structures.
67
682003-01-05 Ulrich Drepper <drepper@redhat.com>
69
70 * Makefile (libthread_db.so-no-z-defs): Define.
71
722002-09-29 Ulrich Drepper <drepper@redhat.com>
73
74 * td_thr_tsd.c (td_thr_tsd): Read correct entry from pthread_keys
75 array.
76
772002-09-28 Andreas Jaeger <aj@suse.de>
78
79 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Fix reference to dtv.
80
812002-09-24 Roland McGrath <roland@redhat.com>
82
83 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Fetch just the
84 individual members we need, not the whole structures.
85
862002-09-24 Ulrich Drepper <drepper@redhat.com>
87
88 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Change second
89 parameter to be the address of the link map in the inferior process.
90 * thread_db.h: Update prototype for td_thr_tls_get_addr.
91
922002-08-23 Ulrich Drepper <drepper@redhat.com>
93
94 * thread_dbP.h: Define LINUXTHREADS_VERSION.
95 * td_symbol_list.c (symbol_list_arr): Add LINUXTHREADS_VERSION string.
96 * td_ta_new.c (td_ta_new): After verifying the thread library is
97 there check version.
98 * thread_db.h: Add new error TD_VERSION.
99
1002002-08-21 Roland McGrath <roland@redhat.com>
101
102 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): __attribute_used__ ->
103 __attribute__ ((unused)) for arguments.
104
1052002-08-07 Ulrich Drepper <drepper@redhat.com>
106
107 * thread_dbP.h: Define LINUXTHREADS_INITIAL_REPORT_EVENTS.
108 * td_thr_event_enable.c (td_thr_event_enable): If th->th_unique is
109 null write to __linuxthreads_initial_report_events.
110 * td_symbol_list.c (symbol_list_arr): Add
111 __linuxthreads_initial_report_events.
112
1132002-07-16 Ulrich Drepper <drepper@redhat.com>
114
115 * td_thr_clear_event.c: Yet more changes to help with TLS-enabled
116 libpthread.
117 * td_thr_event_enable.c: Likewise.
118 * td_thr_event_getmsg.c: Likewise.
119 * td_thr_set_event.c: Likewise.
120 * td_thr_setfpregs.c: Likewise.
121 * td_thr_setgregs.c: Likewise.
122 * td_thr_tsd.c: Likewise.
123 * td_thr_validate.c: Likewise.
124
1252002-07-15 Ulrich Drepper <drepper@redhat.com>
126
127 * td_ta_thr_iter.c: Some more changes to enable using TLS-enabled
128 libpthread.
129 * td_thr_event_enable.c: Likewise.
130 * td_thr_getfpregs.c: Likewise.
131 * td_thr_getgregs.c: Likewise.
132
1332002-07-14 Ulrich Drepper <drepper@redhat.com>
134
135 * td_ta_map_id2thr.c: Begin fixing implementation for libpthread with
136 TLS support.
137 * td_ta_map_lwp2thr.c: Likewise.
138 * td_ta_thr_iter.c: Likewise.
139 * td_thr_get_info.c: Likewise.
140
1412002-07-10 Ulrich Drepper <drepper@redhat.com>
142
143 * Versions [libthread_db] (GLIBC_2.3): Add td_thr_tls_get_addr.
144
1452002-06-14 H.J. Lu <hjl@gnu.org>
146
147 * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Don't include
148 "tls.h". Return TD_ERR if USE_TLS is not defined.
149
1502002-06-12 Ulrich Drepper <drepper@redhat.com>
151
152 * td_thr_tls_get_addr.c: New file.
153 * thread_db.h: Add prototype for td_thr_tls_get_addr.
154 * Makefile (libthread_db-routines): Add td_thr_tls_get_addr.
155
1562002-03-03 Andreas Jaeger <aj@suse.de>
157
158 * thread_dbP.h: Include <unistd.h> for prototypes of __libc_write.
159
1602002-02-04 Ulrich Drepper <drepper@redhat.com>
161
162 * thread_dbP.h: Include descr.h instead of internals.h.
163 * td_ta_event_getmsg.c: Also include <linuxthreads/internals.h>.
164 * td_ta_map_id2thr.c: Likewise.
165 * td_ta_map_lwp2thr.c: Likewise.
166 * td_ta_thr_iter.c: Likewise.
167 * td_ta_tsd_iter.c: Likewise.
168 * td_thr_tsd.c: Likewise.
169 * td_thr_validate.c: Likewise.
170
1712001-12-28 Andreas Jaeger <aj@suse.de>
172
173 * td_init.c (td_init): Don't use __FUNCTION__ as literal.
174 * td_log.c (td_log): Likewise.
175 * td_ta_delete.c (td_ta_delete): Likewise.
176 * td_ta_get_nthreads.c (td_ta_get_nthreads): Likewise.
177 * td_ta_get_ph.c (td_ta_get_ph): Likewise.
178 * td_ta_map_id2thr.c (td_ta_map_id2thr): Likewise.
179 * td_ta_map_lwp2thr.c (td_ta_map_lwp2thr): Likewise.
180 * td_ta_new.c (td_ta_new): Likewise.
181 * td_ta_clear_event.c (td_ta_clear_event): Likewise.
182 * td_ta_enable_stats.c (td_ta_enable_stats): Likewise.
183 * td_ta_event_addr.c (td_ta_event_addr): Likewise.
184 * td_ta_event_getmsg.c (td_ta_event_getmsg): Likewise.
185 * td_ta_get_stats.c (td_ta_get_stats): Likewise.
186 * td_ta_reset_stats.c (td_ta_reset_stats): Likewise.
187 * td_ta_set_event.c (td_ta_set_event): Likewise.
188 * td_ta_setconcurrency.c (td_ta_setconcurrency): Likewise.
189 * td_ta_thr_iter.c (td_ta_thr_iter): Likewise.
190 * td_ta_tsd_iter.c (td_ta_tsd_iter): Likewise.
191 * td_thr_clear_event.c (td_thr_clear_event): Likewise.
192 * td_thr_dbresume.c (td_thr_dbresume): Likewise.
193 * td_thr_dbsuspend.c (td_thr_dbsuspend): Likewise.
194 * td_thr_event_enable.c (td_thr_event_enable): Likewise.
195 * td_thr_event_getmsg.c (td_thr_event_getmsg): Likewise.
196 * td_thr_get_info.c (td_thr_get_info): Likewise.
197 * td_thr_getfpregs.c (td_thr_getfpregs): Likewise.
198 * td_thr_getgregs.c (td_thr_getgregs): Likewise.
199 * td_thr_getxregs.c (td_thr_getxregs): Likewise.
200 * td_thr_getxregsize.c (td_thr_getxregsize): Likewise.
201 * td_thr_set_event.c (td_thr_set_event): Likewise.
202 * td_thr_setfpregs.c (td_thr_setfpregs): Likewise.
203 * td_thr_setgregs.c (td_thr_setgregs): Likewise.
204 * td_thr_setprio.c (td_thr_setprio): Likewise.
205 * td_thr_setsigpending.c (td_thr_setsigpending): Likewise.
206 * td_thr_setxregs.c (td_thr_setxregs): Likewise.
207 * td_thr_sigsetmask.c (td_thr_sigsetmask): Likewise.
208 * td_thr_tsd.c (td_thr_tsd): Likewise.
209 * td_thr_validate.c (td_thr_validate): Likewise.
210
2112001-04-12 Ulrich Drepper <drepper@redhat.com>
212
213 * td_ta_map_id2thr.c: If thread terminated return TD_NOTHR.
214 * td_thr_validate.c: Likewise.
215
2162001-04-04 Ulrich Drepper <drepper@redhat.com>
217
218 * td_thr_getfpregs.c: If p_pid is zero use ps_getpid().
219 * td_thr_getgregs.c: Likewise.
220 * td_thr_setfpregs.c: Likewise.
221 * td_thr_setgregs.c: Likewise.
222
2232001-03-20 Ulrich Drepper <drepper@redhat.com>
224
225 * Makefile (libthread_db-routines): Add td_symbol_list.
226 * Versions [libthread_db] (GLIBC_2.2.3): Add td_symbol_list.
227 * td_symbol_list.c: New file.
228 * thread_db.h: Add prototype for td_symbol_list.
229 * thread_dbP.h: Define symbol name indices.
230 Add prototype for td_lookup.
231 * td_ta_event_addr.c: Use td_lookup instead of directly using
232 ps_pglobal_lookup to find symbol address.
233 * td_ta_get_nthreads.c: Likewise.
234 * td_ta_new.c: Likewise.
235
2362001-03-18 Ulrich Drepper <drepper@redhat.com>
237
238 * Makefile: When generating DSO link with libc_nonshared.a.
239
2402000-08-01 Andreas Jaeger <aj@suse.de>
241
242 * Makefile (distribute): Add missing files.
243
2442000-04-24 Mark Kettenis <kettenis@gnu.org>
245
246 * td_thr_get_info.c (td_thr_get_info): Set ti_state to
247 TD_THR_ACTIVE instead of TD_THR_RUN. If the thread is no longer
248 running but is still joinable, set it to TD_THR_ZOMBIE. Otherwise
249 set it to TD_THR_UNKNOWN.
250
2512000-02-25 Andreas Jaeger <aj@suse.de>
252
253 * td_ta_thr_iter.c: Include <alloca.h> for prototype declaration.
254 * td_ta_tsd_iter.c: Likewise.
255
2562000-01-20 Andreas Jaeger <aj@suse.de>
257
258 * td_thr_getgregs.c (td_thr_getgregs): Fix typo.
259
2602000-01-19 Ulrich Drepper <drepper@cygnus.com>
261
262 * td_thr_getgregs.c: Correct size parameter of memset call.
263
2641999-12-02 Ulrich Drepper <drepper@cygnus.com>
265
266 * proc_service.h: Fix typos in last added declaractions.
267
2681999-12-01 Ulrich Drepper <drepper@cygnus.com>
269
270 * proc_service.h: Add ps_pstop, ps_pcontinue, ps_lstop, and
271 ps_lcontinue prototypes.
272
2731999-11-23 Ulrich Drepper <drepper@cygnus.com>
274
275 * Makefile: Correct dependency for shared object.
276
2771999-11-22 Ulrich Drepper <drepper@cygnus.com>
278
279 * td_ta_map_lwp2thr.c: Add missing brace in comparison.
280
281 * thread_dbP.h (LOG): Only print message if __td_debug is nonzero.
282 * td_init.c: Add __td_debug.
283
2841999-11-12 Ulrich Drepper <drepper@cygnus.com>
285
286 * td_ta_thr_iter.c: Start copying list of descriptors from right
287 position in target process.
288
289 * td_ta_thr_iter.c: Fix loop starting point over all but main and
290 manager thread.
291
292 * td_ta_thr_iter.c: Read descriptors for main and manager thread
293 special since after this we can assume that no new threads will be
294 created anymore (at least in the gdb implementation).
295
296 * Makefile: Define version correctly.
297
2981999-11-10 Ulrich Drepper <drepper@cygnus.com>
299
300 * td_ta_map_lwp2thr.c: If p_pid field is zero, this is before the
301 thread library is initialized and we get the PID from the
302 debugger.
303
3041999-11-08 Ulrich Drepper <drepper@cygnus.com>
305
306 * td_thr_get_info.c: Make sure ti_lid is never zero.
307
308 * proc_service.h: Add ps_getpid prototype.
309
3101999-11-03 Ulrich Drepper <drepper@cygnus.com>
311
312 * thread_dbP.h (ta_ok): New function.
313 * td_ta_new.c: Add new handle to list.
314 * td_ta_delete.c: Remove handle from list.
315 * td_ta_clear_event.c: Use ta_ok to check for correct ta parameter.
316 * td_ta_enable_stats.c: Likewise.
317 * td_ta_event_addr.c: Likewise.
318 * td_ta_event_getmsg.c: Likewise.
319 * td_ta_get_nthreads.c: Likewise.
320 * td_ta_get_ph.c: Likewise.
321 * td_ta_get_stats.c: Likewise.
322 * td_ta_map_id2thr.c: Likewise.
323 * td_ta_map_lwp2thr.c: Likewise.
324 * td_ta_reset_stats.c: Likewise.
325 * td_ta_set_event.c: Likewise.
326 * td_ta_setconcurrency.c: Likewise.
327 * td_ta_thr_iter.c: Likewise.
328
329 * td_ta_tsd_iter.c: Optimize memory retrieving.
330
331 * Versions: New file.
332
333 * td_thr_get_info.c (td_thr_get_info): Initialize ti_traceme.
334
3351999-11-02 Ulrich Drepper <drepper@cygnus.com>
336
337 * td_ta_thr_iter.c (td_ta_thr_iter): Optimize a bit. Read all
338 handles at once.
339
340 * thread_dbP.h (struct th_thragent): Add pthread_handle_num.
341 * td_ta_new.c: Initialize pthread_handle_num.
342 * td_ta_event_getmsg.c: If last event was already reported search
343 for another unreported event.
344
345 * td_thr_get_info.c (td_thr_get_info): Initialize ti_events.
346
347 * Makefile (libthread_db-routines): Add td_ta_set_event,
348 td_ta_event_getmsg, and td_ta_clear_event.
349 * td_ta_clear_event.c: New file.
350 * td_ta_event_getmsg.c: New file.
351 * td_ta_new.c: Get address of __pthread_last_event in target.
352 * td_ta_set_event.c: Don't overwrite old mask, set additional bits.
353 * td_thr_set_event.c: Likewise.
354 * td_thr_clear_event.c: Implement.
355 * thread_db.h: Declare td_ta_clear_event and td_ta_event_getmsg.
356 * thread_dbP.h (struct td_thragent): Add pthread_last_event.
357
358 * td_ta_new.c: Don't test for __pthread_threads_debug. Get address
359 of __pthread_threads_events and fail if this is not possible.
360 * td_ta_event_addr.c: Implement.
361 * td_thr_event_enable.c: Implement.
362 * td_thr_event_getmsg.c: Implement.
363 * td_thr_set_event.c: Implement.
364 * td_ta_set_event.c: New file.
365 * thread_db.h (td_eventbuf_t): Define.
366 Declare td_ta_set_event.
367 * thread_dbP.h (struct td_thragent): Add pthread_threads_eventsp.
368
369 * td_thr_getfpregs.c: For terminated threads return empty structure.
370 * td_thr_getgregs.c: Likewise.
371 * td_thr_setfpregs.c: Likewise.
372 * td_thr_setgregs.c: Likewise.
373
3741999-11-01 Ulrich Drepper <drepper@cygnus.com>
375
376 * thread_db.h: Shuffle types around to make things work for gdb.
377 * thread_dbP.h: Include proc_service.h before thread_db.h.
378
379 * thread_db.h: It's TD_NOLIBTHREAD, not TD_LIBTHREAD.
380 * td_ta_new.c: Likewise.
381
3821999-10-14 Ulrich Drepper <drepper@cygnus.com>
383
384 * td_ta_new.c: p_startfct does not exist anymore.
385
386 * td_thr_get_info.c: Always initialize start function.
387
388 * td_ta_thr_iter.c: Don't return threads which exited (but are not
389 joined).
390
391 * td_thr_validate.c: Don't skip manager thread.
392
3931999-10-13 Ulrich Drepper <drepper@cygnus.com>
394
395 * td_ta_thr_iter.c: Use size of descriptor from *TA.
396 Don't return manager thread before it's actually running.
397 Actually use state parameter to distingusih at least a few states.
398
399 * td_thr_get_info.c: Handle manager thread special. Fill in ti_lid,
400 ti_state, and ti_startfunc fields.
401
4021999-10-12 Andreas Jaeger <aj@suse.de>
403
404 * thread_dbP.h: Include <string.h> for strlen declaration. Remove
405 __libc_write prototype since this is already declared in
406 linuxthreads/internals.h.
407
4081999-10-11 Ulrich Drepper <drepper@cygnus.com>
409
410 * thread_db.h: Fix comment for ti_type.
411
412 * td_thr_get_info.c: Initialize ti_type field.
413
414 * td_ta_thr_iter.c: Also report the manager thread.
415
4161999-10-08 Andreas Jaeger <aj@suse.de>
417
418 * thread_db.h: Fix typos in comments.
419
420 * td_ta_get_nthreads.c (td_ta_get_nthreads): Don't hardcode
421 libpthread library name, get it from <gnu/lib-names.h> instead.
422 * td_ta_new.c (td_ta_new): Likewise.
423
4241999-10-08 Ulrich Drepper <drepper@cygnus.com>
425
426 * shlib-versions: New file.
427
4281999-10-07 Ulrich Drepper <drepper@cygnus.com>
429
430 * Makefile: New file.
431 * proc_service.h: New file.
432 * td_init.c: New file.
433 * td_log.c: New file.
434 * td_ta_delete.c: New file.
435 * td_ta_enable_stats.c: New file.
436 * td_ta_event_addr.c: New file.
437 * td_ta_get_nthreads.c: New file.
438 * td_ta_get_ph.c: New file.
439 * td_ta_get_stats.c: New file.
440 * td_ta_map_id2thr.c: New file.
441 * td_ta_map_lwp2thr.c: New file.
442 * td_ta_new.c: New file.
443 * td_ta_reset_stats.c: New file.
444 * td_ta_setconcurrency.c: New file.
445 * td_ta_thr_iter.c: New file.
446 * td_ta_tsd_iter.c: New file.
447 * td_thr_clear_event.c: New file.
448 * td_thr_dbresume.c: New file.
449 * td_thr_dbsuspend.c: New file.
450 * td_thr_event_enable.c: New file.
451 * td_thr_event_getmsg.c: New file.
452 * td_thr_get_info.c: New file.
453 * td_thr_getfpregs.c: New file.
454 * td_thr_getgregs.c: New file.
455 * td_thr_getxregs.c: New file.
456 * td_thr_getxregsize.c: New file.
457 * td_thr_set_event.c: New file.
458 * td_thr_setfpregs.c: New file.
459 * td_thr_setgregs.c: New file.
460 * td_thr_setprio.c: New file.
461 * td_thr_setsigpending.c: New file.
462 * td_thr_setxregs.c: New file.
463 * td_thr_sigsetmask.c: New file.
464 * td_thr_tsd.c: New file.
465 * td_thr_validate.c: New file.
466 * thread_db.h: New file.
467 * thread_dbP.h: New file.