12007-05-16  Roland McGrath  <roland@redhat.com>
2
3	* td_thr_get_info.c: Fake the results for TH->th_unique == 0.
4	* td_thr_validate.c: Likewise.
5	* td_thr_setgregs.c: Likewise.
6	* td_thr_setfpregs.c: Likewise.
7	* td_thr_getgregs.c: Likewise.
8	* td_thr_getfpregs.c: Likewise.
9	* td_thr_tlsbase.c: Likewise.
10
11	* structs.def: Add DB_VARIABLE (__nptl_initial_report_events).
12	* db_info.c: Add necessary declaration.
13	* td_thr_event_enable.c: Set __nptl_initial_report_events too.
14
15	* td_ta_thr_iter.c (iterate_thread_list): Make FAKE_EMPTY bool.
16	Use th_unique=0 in fake descriptor before initialization.
17
18	* td_ta_map_lwp2thr.c (__td_ta_lookup_th_unique): New function, broken
19	out of ...
20	(td_ta_map_lwp2thr): ... here, call it.  But don't before __stack_user
21	is initialized, then fake a handle with th_unique=0.
22	* thread_dbP.h: Declare it.
23
242004-09-09  Roland McGrath  <roland@redhat.com>
25
26	* td_ta_map_lwp2thr.c (td_ta_map_lwp2thr): Don't abort if inferior's
27	descriptor is bogus.
28
292004-05-27  Roland McGrath  <roland@redhat.com>
30
31	* td_thr_validate.c: When we find no threads and the inferior appears
32	uninitialized, validate the main thread as a special case.
33
342004-05-01  Jakub Jelinek  <jakub@redhat.com>
35
36	* thread_dbP.h (LOG): Use write instead of __libc_write.
37
382004-04-03  Ulrich Drepper  <drepper@redhat.com>
39
40	* td_ta_set_event.c (td_ta_set_event): Initialize copy to avoid
41	warnings.
42
43	* td_ta_thr_iter.c (td_ta_thr_iter): Initialize list to avoid warning.
44	* td_ta_clear_event.c (td_ta_clear_event): Initialize eventmask to
45	avoid warning.
46	* td_ta_set_event.c (td_ta_set_event): Likewise.
47
482004-03-24  Roland McGrath  <roland@redhat.com>
49
50	* fetch-value.c (_td_locate_field): Cast DB_DESC_OFFSET to int32_t.
51	* thread_dbP.h (DB_DESC_OFFSET): Remove cast from definition.
52
532004-03-13  Jakub Jelinek  <jakub@redhat.com>
54
55	* db_info.c: Don't use TLS_TP_OFFSET in the #if, but
56	TLS_TCB_SIZE == 0 ?: in the DESC macro.
57
582004-03-12  Roland McGrath  <roland@redhat.com>
59
60	* db_info.c [TLS_DTV_AT_TP && TLS_TP_OFFSET > 0]
61	(_thread_db_pthread_dtvp): Define differently for this case (PowerPC).
62
632003-12-11  Ulrich Weigand  <uweigand@de.ibm.com>
64
65	* db_info.c (REGISTER): Add bit size of thread register as second
66	parameter to REGISTER macro.
67
682003-12-02  Roland McGrath  <roland@redhat.com>
69
70	* thread_dbP.h (DB_FUNCTION): New macro.
71	* structs.def: Use it for __nptl_create_event and __nptl_death_event.
72	* db_info.c (DB_FUNCTION): New macro.
73	* td_symbol_list.c (DB_FUNCTION): New macro, prepend "." to symbol
74	name under [HAVE_ASM_GLOBAL_DOT_NAME].
75	(td_lookup) [HAVE_ASM_GLOBAL_DOT_NAME]: If lookup fails with PS_NOSYM
76	and name starts with a dot, try it without the dot.
77
782003-09-08  Roland McGrath  <roland@redhat.com>
79
80	* td_thr_get_info.c (td_thr_get_info): Cast th_unique to thread_t.
81
822003-08-22  Roland McGrath  <roland@redhat.com>
83
84	* fetch-value.c (_td_check_sizeof, _td_locate_field): Return
85	TD_NOCAPAB for PS_NOSYM, instead of vanilla TD_ERR.
86	* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Return TD_NOAPLIC when
87	DB_GET_FIELD returns TD_NOCAPAB.
88
89	* thread_db.h (td_thr_tls_get_addr): Use psaddr_t in signature.
90	* structs.def [USE_TLS]: Add DB_STRUCT_FIELD (link_map, l_tls_modid).
91	* db_info.c (link_map): Typedef it.
92	* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Rewritten.
93
942003-08-14  Roland McGrath  <roland@redhat.com>
95
96	* thread_dbP.h: Mostly rewritten with many new macros and decls.
97	* td_ta_new.c (td_ta_new): Don't cache a lot of symbol values.
98	* structs.def: New file.
99	* db_info.c: New file.
100	* td_symbol_list.c (symbol_list_arr): Define with structs.def macros.
101	* td_ta_clear_event.c: Rewritten.
102	* td_ta_event_addr.c: Rewritten.
103	* td_ta_event_getmsg.c: Rewritten.
104	* td_ta_get_nthreads.c: Rewritten.
105	* td_ta_map_lwp2thr.c: New file.
106	* td_ta_set_event.c: Rewritten.
107	* td_ta_thr_iter.c: Rewritten.
108	* td_ta_tsd_iter.c: Rewritten.
109	* td_thr_clear_event.c: Rewritten.
110	* td_thr_event_enable.c: Rewritten.
111	* td_thr_event_getmsg.c: Rewritten.
112	* td_thr_get_info.c: Rewritten.
113	* td_thr_getfpregs.c: Rewritten.
114	* td_thr_getgregs.c: Rewritten.
115	* td_thr_set_event.c: Rewritten.
116	* td_thr_setfpregs.c: Rewritten.
117	* td_thr_setgregs.c: Rewritten.
118	* td_thr_tlsbase.c: Rewritten.
119	* td_thr_tsd.c: Rewritten.
120	* td_thr_validate.c: Rewritten.
121	* Makefile (distribute): Add them.
122	* fetch-value.c: New file.
123	* Makefile (libthread_db-routines): Add it.
124
125	* thread_db.h (td_err_e): Comment fix.
126
1272003-08-05  Roland McGrath  <roland@redhat.com>
128
129	* thread_dbP.h (td_lookup): Add attribute_hidden to decl.
130
1312003-08-04  Roland McGrath  <roland@redhat.com>
132
133	* td_ta_clear_event.c (td_ta_clear_event): Fix sizes in ps_* calls.
134
1352003-06-23  Roland McGrath  <roland@redhat.com>
136
137	* proc_service.h: Cosmetic and comment fixes.
138
1392003-06-19  Roland McGrath  <roland@redhat.com>
140
141	* td_thr_event_enable.c (td_thr_event_enable): Use proper type `bool'
142	for value written into inferior's `report_events'.
143
1442003-03-18  Roland McGrath  <roland@redhat.com>
145
146	* td_thr_event_getmsg.c (td_thr_event_getmsg): Splice the thread out
147	of the ->nextevent linkage.
148
149	* td_ta_event_getmsg.c (td_ta_event_getmsg): Runtime error instead of
150	assert for reading TD_EVENT_NONE.  Clear the event buffer after
151	reading it.  Add a sanity check for foo->nextevent = foo.
152
1532003-03-15  Roland McGrath  <roland@redhat.com>
154
155	* thread_db.h (td_err_e): Add TD_NOTLS and TD_TLSDEFER.
156	(td_thr_tlsbase): Declare it.
157	* td_thr_tlsbase.c: New file.
158	* Makefile (libthread_db-routines): Add it.
159	* Versions (libthread_db: GLIBC_2.3.3): New set, add td_thr_tlsbase.
160	* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Use td_thr_tlsbase.
161
1622003-03-14  Roland McGrath  <roland@redhat.com>
163
164	* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Use `header.' prefix.
165
1662003-03-10  Roland McGrath  <roland@redhat.com>
167
168	* td_ta_thr_iter.c (iterate_thread_list): Don't use `header.data.'
169	prefix for `struct pthread' members.
170	* td_thr_validate.c (check_thread_list): Likewise.
171	* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Likewise.
172
1732003-03-03  Roland McGrath  <roland@redhat.com>
174
175	* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Handle TLS_DTV_AT_TP.
176
1772003-02-15  Ulrich Drepper  <drepper@redhat.com>
178
179	* td_symbol_list.c: New symbol name for SYM_PTHREAD_NTHREADS.
180
1812003-01-07  Jakub Jelinek  <jakub@redhat.com>
182
183	* td_ta_event_getmsg.c: Include assert.h.
184
185-2003-01-05  Ulrich Drepper  <drepper@redhat.com>
186
187	* Makefile (libthread_db.so-no-z-defs): Define.
188
1892003-01-03  Roland McGrath  <roland@redhat.com>
190
191	* td_thr_setgregs.c (td_thr_setgregs): *_BIT -> *_BITMASK
192	* td_thr_setfpregs.c (td_thr_setfpregs): Likewise.
193	* td_thr_get_info.c (td_thr_get_info): Likewise.
194	* td_thr_getgregs.c (td_thr_getgregs): Likewise.
195	* td_thr_getfpregs.c (td_thr_getfpregs): Likewise.
196	* td_ta_thr_iter.c (iterate_thread_list): Likewise.
197
1982002-12-12  Roland McGrath  <roland@redhat.com>
199
200	* td_ta_thr_iter.c (iterate_thread_list): Handle special case of
201	uninitialized __stack_user (zeros), hard-wire just the main thread.
202
203	* td_thr_get_info.c (td_thr_get_info): Fix ti_lid initialization.
204
2052002-12-06  Roland McGrath  <roland@redhat.com>
206
207	* td_ta_event_getmsg.c (td_ta_event_getmsg): Write the NEXT pointer
208	into the inferior's __pthread_last_event variable, not a word from
209	an inferior address used in the parent.  Pass the address of a
210	null word to ps_pdwrite, not a null pointer.
211
2122002-12-04  Roland McGrath  <roland@redhat.com>
213
214	* td_thr_get_info.c (td_thr_get_info): ti_tid is pthread_t, not a PID.
215
216	* thread_db.h (td_thrinfo_t): Comment fix.
217
218	* td_ta_map_lwp2thr.c: Moved to ../nptl/sysdeps/i386/.
219
2202002-12-04  Ulrich Drepper  <drepper@redhat.com>
221
222	* td_ta_thr_iter.c (iterate_thread_list): At end of iteration read
223	pointer to the next element from inferior.
224
2252002-12-02  Roland McGrath  <roland@redhat.com>
226
227	* td_symbol_list.c (symbol_list_arr): pthread_keys -> __pthread_keys
228
229	* td_ta_map_lwp2thr.c (td_ta_map_lwp2thr): Fetch inferior registers to
230	see its %gs value, not our own.
231