]>
Commit | Line | Data |
---|---|---|
3325198e UD |
1 | 2002-12-19 Ulrich Drepper <drepper@redhat.com> |
2 | ||
057c823f UD |
3 | * sysdeps/unix/sysv/linux/i386/dl-sysdep.h: Don't define |
4 | NEED_DL_SYSINFO since no processor < i686 had the sysenter opcode. | |
5 | * sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h: New file. | |
6 | ||
097eca29 UD |
7 | * sysdeps/unix/sysv/linux/i386/pthread_once.S: Use ENTER_KERNEL instead |
8 | of int $0x80. | |
9 | * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Likewise. | |
10 | * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevelmutex.S: Likewise. | |
11 | * sysdeps/unix/sysv/linux/i386/i486/lowlevelcond.S: Likewise. | |
12 | * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise. | |
13 | * sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise. | |
14 | * sysdeps/unix/sysv/linux/i386/i486/lowlevelrwlock.S: Likewise. | |
15 | * sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Likewise. | |
16 | * sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Likewise. | |
17 | ||
18 | * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Add support for using | |
19 | sysenter. | |
20 | * sysdeps/unix/sysv/linux/i386/lowlevelsem.h: Likewise. | |
21 | ||
22 | * sysdeps/i386/tls.h: Unconditionally include <dl-sysdep.h>. | |
23 | ||
5f5843e3 UD |
24 | * allocatestack.c (allocate_stack) [NEED_DL_SYSINFO]: Set sysinfo |
25 | in new TCB. | |
26 | * sysdeps/unix/sysv/linux/i386/createthread.c (create_thread): Check | |
27 | that sysinfo is properly initialized. | |
28 | * sysdeps/unix/sysv/linux/i386/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO | |
29 | to 1 only for ld.so. | |
30 | ||
3325198e UD |
31 | * sysdeps/unix/sysv/linux/i386/dl-sysdep.h: Define |
32 | RTLD_CORRECT_DYNAMIC_WEAK. | |
33 | ||
74e8f2dc UD |
34 | 2002-12-19 Jakub Jelinek <jakub@redhat.com> |
35 | ||
36 | * forward.c (pthread_attr_init_2_0, pthread_attr_init_2_1): | |
37 | Use return 0 as 6th argument to FORWARD4. | |
38 | * pthread_equal.c: Include pthreadP.h instead of pthread.h. | |
39 | ||
df45b31e UD |
40 | 2002-12-18 Ulrich Drepper <drepper@redhat.com> |
41 | ||
42 | * descr.h (struct pthread) [NEED_DL_SYSINFO]: Add sysinfo member. | |
43 | * sysdeps/i386/tls.h (tcbhead_t): Add sysinfo member. | |
44 | Define SYSINFO_OFFSEET if NEED_DL_SYSINFO is defined. | |
45 | (INIT_SYSINFO): New #define. | |
46 | (TLS_TP_INIT): Use INIT_SYSINFO. | |
47 | * sysdeps/unix/sysv/linux/libc_pthread_init.c (__libc_pthread_init): | |
48 | At test to make sure SYSINFO_OFFSET value is correct. | |
49 | * sysdeps/unix/sysv/linux/i386/dl-sysdep.h: New file. | |
50 | ||
3d539579 UD |
51 | 2002-12-18 Jakub Jelinek <jakub@redhat.com> |
52 | ||
53 | * sysdeps/pthread/flockfile.c (flockfile): Change into weak alias. | |
54 | * sysdeps/unix/sysv/linux/raise.c (gsignal): Add weak alias to raise. | |
55 | * Versions [libc: GLIBC_2.0]: Add pthread_attr_init. | |
56 | [libpthread: GLIBC_2.1]: Remove __pthread_rwlock_init, | |
57 | __pthread_rwlock_destroy, __pthread_rwlock_rdlock, | |
58 | __pthread_rwlock_wrlock, __pthread_rwlock_unlock, | |
59 | __pthread_rwlock_tryrdlock and __pthread_rwlock_trywrlock. | |
60 | ||
d7913e0e UD |
61 | 2002-12-18 Ulrich Drepper <drepper@redhat.com> |
62 | ||
f051627f UD |
63 | * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h: Use ENTER_KERNEL |
64 | macro instead of using int $0x80 directly. | |
65 | ||
d7913e0e UD |
66 | * sysdeps/pthread/bits/stdio-lock.h: New file. |
67 | * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevelmutex.S: New file. | |
68 | * sysdeps/unix/sysv/linux/i386/i586/libc-lowlevelmutex.S: New file. | |
69 | * sysdeps/unix/sysv/linux/i386/i686/libc-lowlevelmutex.S: New file. | |
70 | * Makefile (routines): Add libc-lowlevelmutex. | |
71 | ||
72 | * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Remove | |
73 | __i686.get_pc_thunk.dx. | |
74 | ||
f077a4a9 UD |
75 | 2002-12-17 Jakub Jelinek <jakub@redhat.com> |
76 | ||
77 | * Makefile (libpthread-shared-only-routines): Add pt-allocrtsig. | |
78 | (tests): Depend on $(objpfx)tst-cancel-wrappers.out. | |
79 | ($(objpfx)tst-cancel-wrappers.out): New rule. | |
80 | * tst-cancel-wrappers.sh: New test. | |
81 | * tst-locale1.c: Include signal.h. | |
82 | (uselocale): Test static linking of __libc_current_sigrt*. | |
83 | ||
84 | 2002-12-17 Ulrich Drepper <drepper@redhat.com> | |
85 | ||
86 | * Makefile (tests): Add tst-cancel6. | |
87 | * tst-cancel6.c: New file | |
88 | ||
bd499a3b UD |
89 | 2002-12-17 Jakub Jelinek <jakub@redhat.com> |
90 | ||
91 | * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h (SINGLE_THREAD_P): | |
92 | Define meaningfully for assembler as well. | |
93 | * pthreadP.h (struct pthread_functions): Remove | |
94 | ptr_pthread_attr_init field. Add ptr_pthread_attr_init_2_0 | |
95 | and ptr_pthread_attr_init_2_1 fields. | |
96 | * init.c (pthread_functions): Initialize ptr_pthread_attr_init_2_0 | |
97 | and ptr_pthread_attr_init_2_1 instead of ptr_pthread_attr_init. | |
98 | * forward.c (FORWARD4): Renamed from FORWARD3. Add export argument. | |
99 | (FORWARD3): Define using FORWARD4. | |
100 | (pthread_attr_init): Provide both @GLIBC_2.0 and @@GLIBC_2.1 | |
101 | versions. | |
102 | * pt-system.c: Remove duplicate stdlib.h include. | |
103 | ||
0a1063f4 UD |
104 | 2002-12-16 Ulrich Drepper <drepper@redhat.com> |
105 | ||
87d60668 UD |
106 | * sem_init.c: Define sem_init@GLIBC_2.0. |
107 | * sem_destroy.c: Define sem_destroy@GLIBC_2.0. | |
108 | * sem_getvalue.c: Define sem_getvalue@GLIBC_2.0. | |
109 | ||
0a1063f4 UD |
110 | * flockfile.c: Moved to... |
111 | * sysdeps/pthread/flockfile.c: ...here. New file. | |
112 | * funlockfile.c: Moved to... | |
113 | * sysdeps/pthread/funlockfile.c: ...here. New file. | |
114 | * ftrylockfile.c: Moved to... | |
115 | * sysdeps/pthread/ftrylockfile.c: ...here. New file. | |
116 | ||
9634cf9d UD |
117 | 2002-12-16 Jakub Jelinek <jakub@redhat.com> |
118 | ||
119 | * libc-cancellation.c: Guard both function with | |
120 | #if !defined NOT_IN_libc. | |
121 | * Makefile (libpthread-routines): Use ptw-, not pt- prefix for the | |
122 | automatically provided pthread wrappers. | |
123 | * pthreadP.h (LIBC_CANCEL_ASYNC, LIBC_CANCEL_RESET): Define to | |
124 | CANCEL_* if IS_IN_libpthread and to dummy versions if not in libc | |
125 | nor in libpthread. | |
126 | * pt-open.c: Removed. | |
127 | * pt-fcntl.c: Removed. | |
128 | * pt-fsync.c: Removed. | |
129 | * pt-lseek.c: Removed. | |
130 | * pt-msgrcv.c: Removed. | |
131 | * pt-msgsnd.c: Removed. | |
132 | * pt-msync.c: Removed. | |
133 | * pt-nanosleep.c: Removed. | |
134 | * pt-open64.c: Removed. | |
135 | * pt-pause.c: Removed. | |
136 | * pt-pread.c: Removed. | |
137 | * pt-pread64.c: Removed. | |
138 | * pt-pwrite.c: Removed. | |
139 | * pt-pwrite64.c: Removed. | |
140 | * pt-read.c: Removed. | |
141 | * pt-recv.c: Removed. | |
142 | * pt-recvfrom.c: Removed. | |
143 | * pt-recvmsg.c: Removed. | |
144 | * pt-send.c: Removed. | |
145 | * pt-sendto.c: Removed. | |
146 | * pt-sigtimedwait.c: Removed. | |
147 | * pt-sigwait.c: Removed. | |
148 | * pt-wait.c: Removed. | |
149 | * pt-waitpid.c: Removed. | |
150 | * pt-write.c: Removed. | |
151 | * pt-accept.c: Removed. | |
152 | * pt-close.c: Removed. | |
153 | * pt-connect.c: Removed. | |
154 | * pt-lseek64.c: Removed. | |
155 | * pt-sendmsg.c: Removed. | |
156 | * pt-tcdrain.c: Removed. | |
157 | ||
6ee8d334 UD |
158 | 2002-12-15 Ulrich Drepper <drepper@redhat.com> |
159 | ||
81fa9371 UD |
160 | * init.c (__pthread_initialize_minimal_internal): Renamed from |
161 | __pthread_initialize_minimal. Make old name an alias. This | |
162 | converts a normal relocation into a relative relocation. | |
163 | ||
f3015aa5 UD |
164 | * pt-fcntl.c (__fcntl): Use fcntl64 syscall, not fcntl. |
165 | ||
4cbc1950 UD |
166 | * Versions [libpthread: GLIBC_2.3.2]: Remove creat, poll, pselect, |
167 | readv, select, sigpause, sigsuspend, sigwaitinfo, waitid, writev. | |
168 | * Makefile (libpthread-routines): Remove pt-creat, pt-poll, | |
169 | pt-pselect, pt-readv, pt-select, pt-sigpause, pt-sigsuspend, | |
170 | pt-sigwaitinfo, pt-waitid, and pt-writev. | |
171 | * pt-creat.c: Removed. | |
172 | * pt-poll.c: Removed. | |
173 | * pt-pselect.c: Removed. | |
174 | * pt-readv.c: Removed. | |
175 | * pt-select.c: Removed. | |
176 | * pt-sigpause.c: Removed. | |
177 | * pt-sigsuspend.c: Removed. | |
178 | * pt-sigwaitinfo.c: Removed. | |
179 | * pt-waitid.c: Removed. | |
180 | * pt-writev.c: Removed. | |
181 | ||
8454830b UD |
182 | * init.c (pthread_functions): New variable. |
183 | (__pthread_initialize_minimal): Pass pointer to pthread_functions | |
184 | (or NULL) to __libc_pthread_init. | |
185 | * forward.c: Rewrite to use __libc:pthread_functions array to get | |
186 | function addresses. | |
187 | * sysdeps/unix/sysv/linux/fork.h: Remove __libc_pthread_init | |
188 | prototype. | |
189 | * sysdeps/unix/sysv/linux/libc_pthread_init.c (__libc_pthread_init): | |
190 | Take new parameter. Copy content of variable pointed to by it | |
191 | to __libc_pthread_init. | |
192 | ||
193 | * pthreadP.h (struct pthread_functions): New type. | |
194 | (__libc_pthread_init): Declare. | |
195 | ||
196 | * pthread_attr_destroy.c: Add namespace protected alias. | |
197 | * pthread_attr_getdetachstate.c: Likewise. | |
198 | * pthread_attr_getinheritsched.c: Likewise. | |
199 | * pthread_attr_getschedparam.c: Likewise. | |
200 | * pthread_attr_getschedpolicy.c: Likewise. | |
201 | * pthread_attr_getscope.c: Likewise. | |
202 | * pthread_attr_setdetachstate.c: Likewise. | |
203 | * pthread_attr_setinheritsched.c: Likewise. | |
204 | * pthread_attr_setschedparam.c: Likewise. | |
205 | * pthread_attr_setschedpolicy.c: Likewise. | |
206 | * pthread_attr_setscope.c: Likewise. | |
207 | * pthread_cond_broadcast.c: Likewise. | |
208 | * pthread_cond_destroy.c: Likewise. | |
209 | * pthread_cond_init.c: Likewise. | |
210 | * pthread_cond_signal.c: Likewise. | |
211 | * pthread_cond_wait.c: Likewise. | |
212 | * pthread_condattr_destroy.c: Likewise. | |
213 | * pthread_condattr_init.c: Likewise. | |
214 | * pthread_equal.c: Likewise. | |
215 | * pthread_exit.c: Likewise. | |
216 | * pthread_getschedparam.c: Likewise. | |
217 | * pthread_self.c: Likewise. | |
218 | * pthread_setcancelstate.c: Likewise. | |
219 | * pthread_setschedparam.c: Likewise. | |
220 | * pthread_mutex_destroy.c: Likewise. | |
221 | * pthread_mutex_init.c: Likewise. | |
222 | * pthreadP.h: Add prototypes for the aliases. | |
223 | ||
0d5f4929 UD |
224 | * sysdeps/unix/sysv/linux/i386/createthread.c (create_thread): Set |
225 | multiple_threads member in correct TCB to 1. | |
226 | ||
6ee8d334 UD |
227 | * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h: Define |
228 | SINGLE_THREAD_P. If in libc or libpthread examine multiple_thread | |
229 | member of thread decriptor, otherwise return unconditionally 1. | |
230 | ||
2fb6444d UD |
231 | 2002-12-14 Ulrich Drepper <drepper@redhat.com> |
232 | ||
233 | * sysdeps/unix/sysv/linux/i386/pt-socket.S: Changes folded into the | |
234 | regular Linux version. Remove file. | |
235 | * sysdeps/unix/sysv/linux/connect.S: Likewise. Remove file. | |
236 | * sysdeps/unix/sysv/linux/llseek.c: Likewise. Remove file. | |
237 | * sysdeps/unix/sysv/linux/msgrcv.c: Likewise. Remove file. | |
238 | * sysdeps/unix/sysv/linux/msgsnd.c: Likewise. Remove file. | |
239 | * sysdeps/unix/sysv/linux/open64.c: Likewise. Remove file. | |
240 | * sysdeps/unix/sysv/linux/poll.c: Likewise. Remove file. | |
241 | * sysdeps/unix/sysv/linux/pread.c: Likewise. Remove file. | |
242 | * sysdeps/unix/sysv/linux/pread64.c: Likewise. Remove file. | |
243 | * sysdeps/unix/sysv/linux/pselect.c: Likewise. Remove file. | |
244 | * sysdeps/unix/sysv/linux/pwrite.c: Likewise. Remove file. | |
245 | * sysdeps/unix/sysv/linux/pwrite64.c: Likewise. Remove file. | |
246 | * sysdeps/unix/sysv/linux/readv.c: Likewise. Remove file. | |
247 | * sysdeps/unix/sysv/linux/recv.S: Likewise. Remove file. | |
248 | * sysdeps/unix/sysv/linux/recvfrom.S: Likewise. Remove file. | |
249 | * sysdeps/unix/sysv/linux/recvmsg.S: Likewise. Remove file. | |
250 | * sysdeps/unix/sysv/linux/send.S: Likewise. Remove file. | |
251 | * sysdeps/unix/sysv/linux/sendmsg.S: Likewise. Remove file. | |
252 | * sysdeps/unix/sysv/linux/sendto.S: Likewise. Remove file. | |
253 | * sysdeps/unix/sysv/linux/sigpause.c: Likewise. Remove file. | |
254 | * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise. Remove file. | |
255 | * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise. Remove file. | |
256 | * sysdeps/unix/sysv/linux/sigwait.c: Likewise. Remove file. | |
257 | * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise. Remove file. | |
258 | * sysdeps/unix/sysv/linux/system.c: Likewise. Remove file. | |
259 | * sysdeps/unix/sysv/linux/tcdrain.c: Likewise. Remove file. | |
260 | * sysdeps/unix/sysv/linux/wait.c: Likewise. Remove file. | |
261 | * sysdeps/unix/sysv/linux/waitid.c: Likewise. Remove file. | |
262 | * sysdeps/unix/sysv/linux/waitpid.c: Likewise. Remove file. | |
263 | * sysdeps/unix/sysv/linux/writev.c: Likewise. Remove file. | |
264 | * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. Remove file. | |
265 | ||
86b2dc40 UD |
266 | 2002-12-14 Jakub Jelinek <jakub@redhat.com> |
267 | ||
268 | * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h: New file. | |
269 | * sysdeps/unix/sysv/linux/open.c: Removed. | |
270 | * sysdeps/unix/sysv/linux/fsync.c: Removed. | |
271 | * sysdeps/unix/sysv/linux/lseek.c: Removed. | |
272 | * sysdeps/unix/sysv/linux/msync.c: Removed. | |
273 | * sysdeps/unix/sysv/linux/read.c: Removed. | |
274 | * sysdeps/unix/sysv/linux/close.c: Removed. | |
275 | * sysdeps/unix/sysv/linux/creat.c: Removed. | |
276 | * sysdeps/unix/sysv/linux/nanosleep.c: Removed. | |
277 | * sysdeps/unix/sysv/linux/pause.c: Removed. | |
278 | * sysdeps/unix/sysv/linux/select.c: Removed. | |
279 | * sysdeps/unix/sysv/linux/write.c: Removed. | |
280 | ||
9d263d72 UD |
281 | 2002-12-14 Ulrich Drepper <drepper@redhat.com> |
282 | ||
283 | * sysdeps/unix/sysv/linux/i386/pt-socket.S: Check multiple_threads | |
284 | element in TCB to see whether locking is needed. | |
285 | ||
286 | * sysdeps/unix/sysv/linux/libc_pthread_init.c: Check that | |
287 | MULTIPLE_THREADS_OFFSET value is correct. | |
288 | ||
289 | * sysdeps/unix/sysv/linux/close.c: New file. | |
290 | * sysdeps/unix/sysv/linux/connect.S: New file. | |
291 | * sysdeps/unix/sysv/linux/creat.c: New file. | |
292 | * sysdeps/unix/sysv/linux/fsync.c: New file. | |
293 | * sysdeps/unix/sysv/linux/llseek.c: New file. | |
294 | * sysdeps/unix/sysv/linux/lseek.c: New file. | |
295 | * sysdeps/unix/sysv/linux/msgrcv.c: New file. | |
296 | * sysdeps/unix/sysv/linux/msgsnd.c: New file. | |
297 | * sysdeps/unix/sysv/linux/msync.c: New file. | |
298 | * sysdeps/unix/sysv/linux/nanosleep.c: New file. | |
299 | * sysdeps/unix/sysv/linux/open.c: New file. | |
300 | * sysdeps/unix/sysv/linux/open64.c: New file. | |
301 | * sysdeps/unix/sysv/linux/pause.c: New file. | |
302 | * sysdeps/unix/sysv/linux/poll.c: New file. | |
303 | * sysdeps/unix/sysv/linux/pread.c: New file. | |
304 | * sysdeps/unix/sysv/linux/pread64.c: New file. | |
305 | * sysdeps/unix/sysv/linux/pselect.c: New file. | |
306 | * sysdeps/unix/sysv/linux/pwrite.c: New file. | |
307 | * sysdeps/unix/sysv/linux/pwrite64.c: New file. | |
308 | * sysdeps/unix/sysv/linux/readv.c: New file. | |
309 | * sysdeps/unix/sysv/linux/recv.S: New file. | |
310 | * sysdeps/unix/sysv/linux/recvfrom.S: New file. | |
311 | * sysdeps/unix/sysv/linux/recvmsg.S: New file. | |
312 | * sysdeps/unix/sysv/linux/select.c: New file. | |
313 | * sysdeps/unix/sysv/linux/send.S: New file. | |
314 | * sysdeps/unix/sysv/linux/sendmsg.S: New file. | |
315 | * sysdeps/unix/sysv/linux/sendto.S: New file. | |
316 | * sysdeps/unix/sysv/linux/sigpause.c: New file. | |
317 | * sysdeps/unix/sysv/linux/sigsuspend.c: New file. | |
318 | * sysdeps/unix/sysv/linux/sigtimedwait.c: New file. | |
319 | * sysdeps/unix/sysv/linux/sigwait.c: New file. | |
320 | * sysdeps/unix/sysv/linux/sigwaitinfo.c: New file. | |
321 | * sysdeps/unix/sysv/linux/system.c: New file. | |
322 | * sysdeps/unix/sysv/linux/tcdrain.c: New file. | |
323 | * sysdeps/unix/sysv/linux/wait.c: New file. | |
324 | * sysdeps/unix/sysv/linux/waitid.c: New file. | |
325 | * sysdeps/unix/sysv/linux/waitpid.c: New file. | |
326 | * sysdeps/unix/sysv/linux/writev.c: New file. | |
327 | * sysdeps/unix/sysv/linux/i386/fcntl.c: New file. | |
328 | ||
329 | * pt-readv.c: Fix comment. | |
330 | ||
331 | 2002-12-14 Jakub Jelinek <jakub@redhat.com> | |
332 | ||
333 | * tst-cleanup1.c: Include stdlib.h. | |
334 | ||
335 | * tst-cancel5.c: New test. | |
336 | * Makefile (tests): Add tst-cancel5. | |
337 | (tst-cancel5): Link against libc.so libpthread.so in that order. | |
338 | ||
9ae0909b UD |
339 | 2002-12-13 Ulrich Drepper <drepper@redhat.com> |
340 | ||
b7bdd9c4 UD |
341 | * forward.c (test_loaded): Prevent recursive calls. |
342 | ||
9ae0909b UD |
343 | * Makefile (routines): Add libc-cancellation. |
344 | * libc-cancellation.c: New file. | |
345 | * descr.h (struct pthread): Add multiple_threads field. | |
346 | * allocatestack.c (allocate_stack): Initialize multiple_header field of | |
347 | new thread descriptor to 1. | |
348 | * sysdeps/unix/sysv/linux/i386/createthread.c (create_thread): | |
349 | Initialize multiple_thread field after successful thread creation. | |
350 | * cancellation.c (__do_cancel): Move to pthreadP.h. | |
351 | (__pthread_enable_asynccancel): Remove parameter from __do_cancel call. | |
352 | (__pthread_disable_asynccancel): Add internal_function attribute. | |
353 | * init.c (sigcancel_handler): Remove parameter from __do_cancel call. | |
354 | * pthread_setcancelstate.c: Likewise. | |
355 | * pthread_setcanceltype.c: Likewise. | |
356 | * pthread_exit.c: Likewise. | |
357 | * pthreadP.h (CANCELLATION_P): Likewise. | |
358 | (__do_cancel): Define as static inline. | |
359 | (LIBC_CANCEL_ASYNC, LIBC_CANCEL_RESET): New #defines. | |
360 | (__libc_enable_asynccancel, __libc_disable_asynccancel): New | |
361 | declarations. | |
362 | * sysdeps/i386/tls.h (tcbhead_t): Add list and multiple_threads | |
363 | fields. Define MULTIPLE_THREADS_OFFSET. | |
364 | * sysdeps/pthread/bits/libc-lock.h: Remove __libc_locking_needed | |
365 | declaration. | |
366 | * sysdeps/unix/sysv/linux/accept.S: New file. | |
367 | * sysdeps/unix/sysv/linux/read.c: New file. | |
368 | * sysdeps/unix/sysv/linux/write.c: New file. | |
369 | * sysdeps/unix/sysv/linux/i386/pt-socket.S: New file. | |
370 | * sysdeps/unix/sysv/linux/libc_pthread_init.c: Remove definition and | |
371 | initialization of __libc_locking_needed. | |
372 | * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Don't use | |
373 | __libc_locking_needed, use multiple_threads field in TCB. | |
374 | * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Likewise. | |
375 | ||
22f20674 UD |
376 | 2002-12-12 Ulrich Drepper <drepper@redhat.com> |
377 | ||
2ad2e1e7 UD |
378 | * sysdeps/unix/sysv/linux/i386/i686/libc-lowlevellock.S: Use i486 |
379 | version. | |
380 | * sysdeps/unix/sysv/linux/i386/i586/libc-lowlevellock.S: Likewise. | |
381 | ||
22f20674 UD |
382 | * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Correct |
383 | access to __libc_locking_needed for PIC. | |
384 | ||
aa80bf86 UD |
385 | 2002-12-12 Jakub Jelinek <jakub@redhat.com> |
386 | ||
387 | * sysdeps/pthread/bits/libc-lock.h (__libc_locking_needed): Only | |
388 | declare for libc.so. | |
389 | (__libc_lock_init, __libc_lock_init_recursive): Change into comma | |
390 | expression. | |
391 | (__libc_lock_lock): Put into statement expression. | |
392 | (__libc_lock_unlock): Remove trailing semicolon. | |
393 | * sysdeps/unix/sysv/linux/fork.h (__libc_pthread_init): Fix typo. | |
394 | ||
24021373 RM |
395 | 2002-12-12 Roland McGrath <roland@redhat.com> |
396 | ||
397 | * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Use asm operand with | |
398 | "m" constraint to refer to __libc_locking_needed. Declare it here. | |
399 | ||
14e7aece UD |
400 | 2002-12-12 Ulrich Drepper <drepper@redhat.com> |
401 | ||
402 | * sysdeps/unix/sysv/linux/fork-gen.c: Renamed to... | |
403 | * sysdeps/unix/sysv/linux/libc_pthread_init.c: ...this. | |
404 | Initialize __libc_locking_needed. | |
405 | * init.c (__pthread_initialize_minimal): Call __libc_pthread_init | |
406 | instead of __register_pthread_fork_handler. | |
407 | * sysdeps/pthread/bits/libc-lock.h: Declare __libc_locking_needed. | |
408 | * sysdeps/unix/sysv/linux/Makefile (sysdep_routimes): Replace | |
409 | fork-gen with libc_pthread_init. | |
410 | * sysdeps/unix/sysv/linux/Versions: Use __libc_pthread_init instead | |
411 | of __register_pthread_fork_handler. | |
412 | * sysdeps/unix/sysv/linux/fork.h: Declare __libc_pthread_init instead | |
413 | of __register_pthread_fork_handler. | |
414 | * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Use | |
415 | __libc_locking_needed to determine whether lock prefix can be avoided. | |
416 | * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Likewise. | |
417 | ||
85631c8e UD |
418 | 2002-12-11 Ulrich Drepper <drepper@redhat.com> |
419 | ||
da63009e UD |
420 | * Makefile (tests): Add tst-cleanup1. |
421 | * tst-cleanup1.c: New file. | |
422 | * cancellation.c (__cleanup_thread): Removed. | |
423 | (__do_cancel): Remove call to __cleanup_thread. | |
424 | * pthreadP.h: Remove __cleanup_thread prorotype. | |
425 | ||
000160a2 UD |
426 | * sysdeps/pthread/bits/libc-lock.h (__libc_cleanup_region_start): |
427 | Remember function and argument even if cancellation handler | |
428 | function is not available. | |
429 | (__libc_cleanup_region_end): Execute registered function directly if | |
430 | pthread functions are not available. | |
431 | (__libc_cleanup_end): Likewise. | |
432 | ||
85631c8e UD |
433 | * init.c (__pthread_initialize_minimal): Fix initialization in |
434 | static lib by preventing gcc from being too clever. | |
435 | ||
dce8f2b6 UD |
436 | 2002-12-10 Ulrich Drepper <drepper@redhat.com> |
437 | ||
34a075be UD |
438 | * init.c (__pthread_initialize_minimal): Remove unneccesary |
439 | sigaddset call. | |
440 | ||
dce8f2b6 UD |
441 | * Makefile (tests): We can run tst-locale2 now. |
442 | ||
e5e45b53 UD |
443 | 2002-12-09 Ulrich Drepper <drepper@redhat.com> |
444 | ||
445 | * Versions: Remove duplicated sigwait entry. | |
446 | ||
bdb04f92 UD |
447 | 2002-12-08 Ulrich Drepper <drepper@redhat.com> |
448 | ||
1e506629 UD |
449 | * pthreadP.h: Enable pthread_cleanup_{push,pop} optimizations only |
450 | inside libpthread. | |
451 | ||
a3957dd5 UD |
452 | * pt-fcntl.c (__fcntl): Initialize oldtype to avoid warning. |
453 | ||
bdb04f92 UD |
454 | * pthreadP.h: Declare __pthread_enable_asynccancel and |
455 | __pthread_disable_asynccancel. | |
456 | (CANCEL_ASYNC): Use __pthread_enable_asynccancel. | |
457 | (CANCEL_RESET): Use __pthread_disable_asynccancel. | |
458 | * cancellation.c (__pthread_enable_asynccancel): New function. | |
459 | (__pthread_disable_asynccancel): New function. | |
460 | * pt-accept.c: Adjust for CANCEL_ASYNC and CANCEL_RESET change. | |
461 | * pt-close.c: Likewise. | |
462 | * pt-connect.c: Likewise. | |
463 | * pt-creat.c: Likewise. | |
464 | * pt-fcntl.c: Likewise. | |
465 | * pt-fsync.c: Likewise. | |
466 | * pt-lseek.c: Likewise. | |
467 | * pt-lseek64.c: Likewise. | |
468 | * pt-msgrcv.c: Likewise. | |
469 | * pt-msgsnd.c: Likewise. | |
470 | * pt-msync.c: Likewise. | |
471 | * pt-nanosleep.c: Likewise. | |
472 | * pt-open.c: Likewise. | |
473 | * pt-open64.c: Likewise. | |
474 | * pt-pause.c: Likewise. | |
475 | * pt-poll.c: Likewise. | |
476 | * pt-pread.c: Likewise. | |
477 | * pt-pread64.c: Likewise. | |
478 | * pt-pselect.c: Likewise. | |
479 | * pt-pwrite.c: Likewise. | |
480 | * pt-pwrite64.c: Likewise. | |
481 | * pt-read.c: Likewise. | |
482 | * pt-readv.c: Likewise. | |
483 | * pt-recv.c: Likewise. | |
484 | * pt-recvfrom.c: Likewise. | |
485 | * pt-recvmsg.c: Likewise. | |
486 | * pt-select.c: Likewise. | |
487 | * pt-send.c: Likewise. | |
488 | * pt-sendmsg.c: Likewise. | |
489 | * pt-sendto.c: Likewise. | |
490 | * pt-sigpause.c: Likewise. | |
491 | * pt-sigsuspend.c: Likewise. | |
492 | * pt-sigtimedwait.c: Likewise. | |
493 | * pt-sigwait.c: Likewise. | |
494 | * pt-sigwaitinfo.c: Likewise. | |
495 | * pt-system.c: Likewise. | |
496 | * pt-tcdrain.c: Likewise. | |
497 | * pt-wait.c: Likewise. | |
498 | * pt-waitid.c: Likewise. | |
499 | * pt-waitpid.c: Likewise. | |
500 | * pt-write.c: Likewise. | |
501 | * pt-writev.c: Likewise. | |
a3957dd5 UD |
502 | * pthread_join.c: Likewise. |
503 | * pthread_timedjoin.c: Likewise. | |
bdb04f92 UD |
504 | |
505 | * pt-sigpause.c (sigsuspend): Call __sigsuspend. | |
506 | (__xpg_sigpause): New function. | |
507 | * Versions (libpthread:GLIBC_2.3.2): Add __xpg_sigpause. | |
508 | ||
6ccb3834 UD |
509 | 2002-12-07 Ulrich Drepper <drepper@redhat.com> |
510 | ||
09efc3ba UD |
511 | * Makefile (CFLAGS-ftrylockfile.c): Add -D_IO_MTSAFE_IO. |
512 | ||
513 | * cleanup.c: Move declarations of _GI_pthread_cleanup_push and | |
514 | _GI_pthread_cleanup_pop to pthreadP.h. | |
515 | ||
516 | * ftrylockfile.c: Use _IO_lock_trylock instead of | |
517 | pthread_mutex_trylock. | |
518 | ||
519 | * pthreadP.h (CANCEL_ASYNC): Use __pthread_setcanceltype. | |
520 | (CANCEL_RESET): Likewise. | |
521 | (__pthread_setcanceltype_): Declare. | |
522 | (__pthread_mutex_lock_internal): Declare. | |
523 | (__pthread_mutex_unlock_internal): Declare. | |
524 | (__pthread_once_internal): Declare. | |
525 | (pthread_cleanup_push): Redefine using _GI_pthread_cleanup_push. | |
526 | (pthread_cleanup_pop): Redefine using _GI_pthread_cleanup_pop. | |
527 | ||
528 | * pthread_cond_timedwait.c: Use INTUSE is calls to pthread_mutex_lock | |
529 | and pthread_mutex_unlock. | |
530 | * pthread_cond_wait.c: Likewise. | |
531 | * pthread_mutex_lock.c: Use INTDEF to define alias if needed. | |
532 | * pthread_mutex_unlock.c: Likewise. | |
533 | ||
534 | * pthread_setcanceltype.c: Add additional alias | |
535 | __pthread_setcanceltype. | |
536 | ||
537 | * sem_unlink.c (sem_unlink): Use __pthread_once with INTDEF. | |
538 | * sem_open.c (sem_open): Likewise. | |
539 | Use __libc_open, __libc_write, and __libc_close instead of | |
540 | open, write, and close respectively. | |
541 | ||
542 | * sysdeps/pthread/bits/libc-lock.h (__libc_lock_trylock_internal): | |
543 | Rewrite as statement expression since it must return a value. | |
544 | ||
545 | * pthread_cancel.c: Use __pthread_kill instead of pthread_kill. | |
546 | * sysdeps/unix/sysv/linux/pthread_kill.c: Define additional alias | |
547 | __pthread_kill. | |
548 | ||
549 | * sysdeps/unix/sysv/linux/i386/pthread_once.S: Define additional | |
550 | alias __pthread_once_internal. | |
551 | ||
6ccb3834 UD |
552 | * sysdeps/unix/sysv/linux/raise.c: Use libc_hidden_def for raise. |
553 | ||
d3c9f895 UD |
554 | 2002-12-06 Ulrich Drepper <drepper@redhat.com> |
555 | ||
4614167a UD |
556 | * Makefile (tests): Add tst-stdio1 and tst-stdio2. |
557 | * tst-stdio1.c: New file. | |
558 | * tst-stdio2.c: New file. | |
559 | ||
a4548cea UD |
560 | * init.c (__pthread_initialize_minimal): Correct INIT_LIST_HEAD use. |
561 | ||
d3c9f895 UD |
562 | * Makefile (tests): Comment out tst-locale2 for now. |
563 | (CFLAGS-flockfile.c, CFLAGS-funlockfile.c): Define to -D_IO_MTSAFE_IO. | |
564 | ||
565 | * sysdeps/unix/sysv/linux/Makefile: Define CFLAGS-fork.c to | |
566 | -D_IO_MTSAFE_IO. | |
567 | * sysdeps/unix/sysv/linux/fork.c: Include <bits/stdio-lock.h>. | |
568 | Use _IO_lock_init instead of explicit assignment. | |
569 | ||
570 | * sysdeps/pthread/bits/libc-lock.h: Define __rtld_lock_* macros. | |
571 | Define __libc_lock_* and __libc_lock_recursive macros with | |
572 | lowlevellock macros, not pthread mutexes. | |
573 | ||
574 | * flockfile.c: Include <bits/stdio-lock.h>. Use _IO_lock_lock instead | |
575 | of pthread_mutex_lock. | |
576 | * funlockfile.c: Include <bits/stdio-lock.h>. Use _IO_lock_unlock | |
577 | instead of pthread_mutex_unlock. | |
578 | ||
fde89ad0 RM |
579 | 2002-12-06 Roland McGrath <roland@redhat.com> |
580 | ||
581 | * allocatestack.c (__stack_user): Use uninitialized defn. | |
582 | * init.c (__pthread_initialize_minimal): Initialize it here. | |
583 | ||
11767d47 RM |
584 | 2002-12-05 Roland McGrath <roland@redhat.com> |
585 | ||
fde89ad0 RM |
586 | * sysdeps/i386/tls.h (TLS_INIT_TP): Make it return zero or an error |
587 | string. | |
588 | * sysdeps/x86_64/tls.h (TLS_INIT_TP): Likewise. | |
589 | ||
11767d47 RM |
590 | * sysdeps/unix/sysv/linux/i386/createthread.c (create_thread): Add |
591 | missing & here too. | |
592 | ||
440d8bc2 UD |
593 | 2002-12-05 Ulrich Drepper <drepper@redhat.com> |
594 | ||
595 | * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Remove | |
596 | lowlevellock. | |
597 | * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: New file. | |
598 | * sysdeps/unix/sysv/linux/i386/i586/libc-lowlevellock.S: New file. | |
599 | * sysdeps/unix/sysv/linux/i386/i686/libc-lowlevellock.S: New file. | |
600 | * sysdeps/pthread/bits/libc-lock.h: Use lowlevellock implementation | |
601 | for __libc_lock_* macros. | |
602 | * Makefile (routines): Add libc-lowlevellock. | |
603 | ||
604 | 2002-10-09 Roland McGrath <roland@redhat.com> | |
605 | ||
606 | * sysdeps/pthread/bits/libc-lock.h (__libc_maybe_call): New macro. | |
607 | Under [__PIC__], call the function via the pointer fetched for | |
608 | comparison rather than a call by name that uses the PLT. | |
609 | (__libc_lock_init, __libc_rwlock_init, __libc_lock_fini) | |
610 | (__libc_rwlock_fini, __libc_lock_lock, __libc_rwlock_rdlock) | |
611 | (__libc_rwlock_wrlock, __libc_lock_trylock, __libc_rwlock_tryrdlock) | |
612 | (__libc_rwlock_trywrlock, __libc_lock_unlock, __libc_rwlock_unlock) | |
613 | (__libc_key_create, __libc_getspecific, __libc_setspecific): Use it. | |
614 | ||
d5ed0118 RM |
615 | 2002-12-04 Roland McGrath <roland@redhat.com> |
616 | ||
617 | * forward.c (pthread_self): Use FORWARD3 macro to correct return type. | |
618 | ||
619 | * sysdeps/i386/td_ta_map_lwp2thr.c: Moved from ../nptl_db. | |
620 | * sysdeps/generic/td_ta_map_lwp2thr.c: New file. | |
621 | ||
622 | * pthread_create.c (start_thread): Add missing & on __nptl_last_event. | |
623 | ||
eaa4099f UD |
624 | 2002-12-04 Ulrich Drepper <drepper@redhat.com> |
625 | ||
626 | * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Make pthread_t | |
627 | a completely opaque, non-integer type. | |
628 | * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Likewise. | |
629 | ||
33b5d0cc UD |
630 | 2002-12-05 Jakub Jelinek <jakub@redhat.com> |
631 | ||
632 | * sysdeps/i386/tls.h: Include stdlib.h. | |
633 | * sysdeps/x86_64/tls.h: Likewise. | |
634 | ||
7a5cdb30 UD |
635 | 2002-12-04 Ulrich Drepper <drepper@redhat.com> |
636 | ||
c4a6d859 UD |
637 | * Makefile (tests): Add tst-locale2. |
638 | (tests-static): Likewise. | |
639 | * tst-locale2.c: New file. | |
640 | ||
7a5cdb30 UD |
641 | * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Mark asms as |
642 | volatile and add memory clobbers to lock operations. | |
643 | ||
d82d5d12 UD |
644 | 2002-12-03 Ulrich Drepper <drepper@redhat.com> |
645 | ||
69cae3cf UD |
646 | * sysdeps/i386/i686/bits/atomic.h: Use i486 version. |
647 | * sysdeps/i386/i486/bits/atomic.h: New file. | |
648 | * sysdeps/i386/i586/bits/atomic.h: New file. | |
649 | * sysdeps/i386/i686/pthread_spin_trylock.S: Define HAVE_CMOV and | |
650 | include i486 version. | |
651 | * sysdeps/i386/i486/pthread_spin_trylock.S: New file. | |
652 | * sysdeps/i386/i586/pthread_spin_trylock.S: New file. | |
653 | Patch by Marjin Ros <marjin@mad.scientist.com>. | |
654 | ||
e4044c01 UD |
655 | * allocatestack.c (get_cached_stack): Don't crash if we first |
656 | found a stack with a larger size then needed. | |
657 | Reported by Hui Huang <hui.huang@sun.com>. | |
658 | ||
d82d5d12 UD |
659 | * Makefile (tests): Add tst-sysconf. |
660 | * tst-sysconf.c: New file. | |
661 | ||
662 | * sysdeps/unix/sysv/linux/bits/local_lim.h: Undefine | |
663 | PTHREAD_THREADS_MAX. | |
664 | ||
fa9a4ff0 RM |
665 | 2002-12-02 Roland McGrath <roland@redhat.com> |
666 | ||
667 | * pthreadP.h (__stack_user, __nptl_create_event, __nptl_death_event): | |
668 | Declare using hidden_proto instead of attribute_hidden, so there are | |
669 | non-.hidden static symbols for gdb to find. | |
670 | (__pthread_keys): Likewise. | |
671 | * events.c (__nptl_create_event, __nptl_death_event): Add hidden_def. | |
672 | * allocatestack.c (__stack_user): Likewise. | |
673 | * pthread_create.c (__pthread_keys): Likewise. | |
674 | (__nptl_threads_events, __nptl_last_event): Make these static instead | |
675 | of hidden. | |
676 | * pthread_key_create.c (__pthread_pthread_keys_max, | |
677 | __pthread_pthread_key_2ndlevel_size): Renamed from __linuxthreads_*. | |
678 | ||
91949a33 UD |
679 | 2002-12-02 Ulrich Drepper <drepper@redhat.com> |
680 | ||
c22b52fa UD |
681 | * Makefile (tests): Add tst-locale1. If buid-static is yes link |
682 | statically. | |
683 | * tst-locale1.c: New file. | |
684 | ||
beb6aa41 UD |
685 | * pthread_cond_timedwait.c: Include <stdlib.h>. |
686 | ||
91949a33 UD |
687 | * Makefile (tests): Add tst-fork2 and tst-fork3. |
688 | * tst-fork2.c: New file. | |
689 | * tst-fork3.c: New file. | |
690 | ||
654dff90 UD |
691 | 2002-11-28 Ulrich Drepper <drepper@redhat.com> |
692 | ||
cb0e76b4 UD |
693 | * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: New file. |
694 | ||
695 | * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which | |
696 | require it to 200112L. | |
697 | ||
698 | * sysdeps/unix/sysv/linux/i386/i486/lowlevelrwlock.S: Use cmov | |
699 | instruction only if HAVE_CMOV is defined. | |
700 | * sysdeps/unix/sysv/linux/i386/i686/lowlevelrwlock.S: Define HAVE_CMOV. | |
701 | ||
975aa229 UD |
702 | * sysdeps/unix/sysv/linux/x86_64/bits/semaphore.h: New file. |
703 | ||
654dff90 UD |
704 | * sysdeps/unix/sysv/linux/x86_64/pthread_once.S: New file. |
705 | ||
706 | * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: New file. | |
707 | ||
708 | * sysdeps/unix/sysv/linux/x86_64/pt-vfork.S: New file. | |
709 | ||
a3931336 UD |
710 | 2002-11-27 Ulrich Drepper <drepper@redhat.com> |
711 | ||
c10c099c UD |
712 | * sysdeps/x86_64/bits/atomic.h: New file. |
713 | ||
714 | * sysdeps/i386/i686/bits/atomic.h: Fix asm syntax for 8- and | |
715 | 16-bit operations. | |
716 | ||
dca99d27 UD |
717 | * sysdeps/unix/sysv/linux/raise.c (raise): Use INTERNAL_SYSCALL if |
718 | possible since gettid cannot fail. | |
719 | ||
f78deea6 UD |
720 | * sysdeps/x86_64/pthreaddef.h: New file. |
721 | ||
722 | * sysdeps/i386/pthreaddef.h (gettid): Removed. | |
723 | ||
724 | * sysdeps/x86_64/pthread_spin_init.c: New file. | |
725 | * sysdeps/x86_64/pthread_spin_lock.c: New file. | |
726 | * sysdeps/x86_64/pthread_spin_trylock.c: New file. | |
727 | * sysdeps/x86_64/pthread_spin_unlock.c: New file. | |
728 | ||
729 | * sysdeps/i386/i686/pthread_spin_trylock.S (pthread_spin_trylock): | |
730 | Add missing lock prefix. Minute optimization. | |
731 | ||
732 | * tst-spin2.c (main): Also check successful trylock call. | |
733 | ||
734 | * sysdeps/pthread/pthread_sigmask.c (pthread_sigmask): Use correct | |
735 | syscall. Fix typo in case INTERNAL_SYSCALL is not used. | |
736 | ||
737 | * sysdeps/i386/pthread_spin_destroy.c: Moved to... | |
738 | * sysdeps/pthread/pthread_spin_destroy.c: ...here. New file. | |
739 | ||
740 | * sysdeps/i386/pthread_sigmask.c: Removed. Use the generic code. | |
741 | * sysdeps/pthread/pthread_sigmask.c (pthread_sigmask): Return correct | |
742 | value in case of an error. Add support for INTERNAL_SYSCALL. | |
b54e18eb UD |
743 | |
744 | * sysdeps/i386/pthread_sigmask.c (pthread_sigmask): Return correct | |
745 | value in case of an error. | |
746 | ||
a3931336 UD |
747 | * sysdeps/x86_64/tls.h: New file. |
748 | ||
76a50749 UD |
749 | 2002-11-26 Ulrich Drepper <drepper@redhat.com> |
750 | ||
117c452c UD |
751 | * sysdeps/i386/tls.h (THREAD_GETMEM_NC): Change interface. It now |
752 | takes the array member name and the index as parameters. | |
753 | (THREAD_SETMEM_NC): Likewise. | |
754 | * pthread_getspecific.c: Use new THREAD_GETMEM_NC interface. | |
755 | * pthread_setspecific.c: Use new THREAD_GETMEM_NC and THREAD_SETMEM_NC | |
756 | interfaces. | |
757 | ||
758 | * sysdeps/i386/tls.h (THREAD_SETMEM): Use size of member element | |
759 | to decide which code to use. | |
760 | (THREAD_SETMEM_NC): Likewise. | |
761 | ||
76a50749 UD |
762 | * allocatestack.c (queue_stack): Don't remove stack from list here. |
763 | Do it in the caller. Correct condition to prematurely terminate | |
764 | loop to free stacks. | |
765 | (__deallocate_stack): Remove stack from list here. | |
766 | ||
767 | 2002-11-26 Ulrich Drepper <drepper@redhat.com> | |
768 | ||
769 | * Makefile (tests): Add tst-stack1. | |
770 | * tst-stack1.c: New file. | |
771 | ||
772 | * allocatestack.c (allocate_stack): Initialize the TCB on a user | |
773 | provided stack. | |
774 | ||
775 | * pthread_attr_getstack.c: Return bottom of the thread area. | |
776 | ||
777 | 2002-11-25 Ulrich Drepper <drepper@redhat.com> | |
778 | ||
779 | * Makefile (libpthread-routines): Add pt-allocrtsig and | |
780 | pthread_kill_other_threads. | |
781 | * pt-allocrtsig.c: New file. | |
782 | * pthread_kill_other_threads.c: New file. | |
783 | * sysdeps/unix/sysv/linux/allocrtsig.c: Add additional aliases for | |
784 | all three functions. | |
785 | * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Remove | |
786 | allocrtsig. | |
787 | * sysdeps/unix/sysv/linux/Versions (libc:GLIBC_PRIVATE): Export | |
788 | __libc_current_sigrtmin_private, __libc_current_sigrtmax_private, | |
789 | and __libc_allocate_rtsig_private. | |
790 | * Versions (libpthread): Export pthread_kill_other_threads_np, | |
791 | __libc_current_sigrtmin, and __libc_current_sigrtmax. | |
792 | ||
793 | 2002-11-24 Ulrich Drepper <drepper@redhat.com> | |
794 | ||
795 | * allocatestack.c (allocate_stack): stackaddr in attribute points to | |
796 | the end of the stack. Adjust computations. | |
797 | When mprotect call fails dequeue stack and free it. | |
798 | * pthread_attr_setstack.c: Store top of the stack in stackaddr | |
799 | attribute. | |
800 | * pthread_getattr_np.c: Likewise. | |
801 | ||
802 | * descr.h (IS_DETACHED): Add some more parenthesis to prevent | |
803 | surprises. | |
804 | ||
805 | 2002-11-23 Ulrich Drepper <drepper@redhat.com> | |
806 | ||
807 | * sysdeps/pthread/pthread.h (pthread_self): __THROW must come before | |
808 | attribute definitions. Patch by Luca Barbieri <ldb@ldb.ods.org>. | |
809 | ||
810 | 2002-11-22 Ulrich Drepper <drepper@redhat.com> | |
811 | ||
812 | * pthread_getspecific.c: Optimize access to first 2nd-level array. | |
813 | * pthread_setspecific.c: Likewise. | |
814 | ||
815 | 2002-11-21 Ulrich Drepper <drepper@redhat.com> | |
816 | ||
817 | * sysdeps/unix/sysv/linux/i386/createthread.c: Remove CLONE_ flags | |
818 | definitions. Get them from the official place. | |
819 | * sysdeps/unix/sysv/linux/i386/fork.c: Likewise. | |
820 | ||
821 | * sysdeps/unix/sysv/linux/i386/createthread.c: Update CLONE_* flags. | |
822 | Use new CLONE_ flags in clone() calls. | |
823 | ||
824 | * sysdeps/unix/sysv/linux/fork.c: Use ARCH_FORK to actually fork. | |
825 | * sysdeps/unix/sysv/linux/i386/fork.c: New file. | |
826 | ||
827 | * Versions: Add pthread_* functions for libc. | |
828 | * forward.c: New file. | |
829 | ||
830 | * sysdeps/pthread/Makefile (libpthread-sysdeps_routines): Add | |
831 | errno-loc. | |
832 | * herrno.c: New file. | |
833 | * res.c: New file. | |
834 | ||
835 | * Makefile (libpthread-routines): Remove sem_post, sem_wait, | |
836 | sem_trywait, and sem_timedwait. Add herrno and res. | |
837 | * sem_init.c: Don't initialize lock and waiters members. | |
838 | * sem_open.c: Likewise. | |
839 | * sem_post.c: Removed. | |
840 | * sem_wait.c: Removed. | |
841 | * sem_trywait.c: Removed. | |
842 | * sem_timedwait.c: Removed. | |
843 | * sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Complete rewrite. | |
844 | Includes full implementations of sem_post, sem_wait, sem_trywait, | |
845 | and sem_timedwait. | |
846 | * sysdeps/unix/sysv/linux/i386/lowlevelsem.h (lll_sem_post): Adjust | |
847 | for new implementation. | |
848 | * sysdeps/unix/sysv/linux/internaltypes.h (struct sem): Remove lock | |
849 | and waiters fields. | |
850 | ||
851 | * tst-sem3.c: Improve error message. | |
852 | * tst-signal3.c: Likewise. | |
853 | ||
854 | * init.c (__pthread_initialize_minimal): Use set_tid_address syscall | |
855 | to tell the kernel about the termination futex and to initialize tid | |
856 | member. Don't initialize main_thread. | |
857 | * descr.h (struct pthread): Remove main_thread member. | |
858 | * cancelllation.c (__do_cancel): Remove code handling main thread. | |
859 | The main thread is not special anymore. | |
860 | ||
861 | * allocatestack.c (__reclaim_stacks): Mark stacks as unused. Add | |
862 | size of the stacks to stack_cache_actsize. | |
863 | ||
864 | * pt-readv.c: Add missing "defined". | |
865 | * pt-sigwait.c: Likewise. | |
866 | * pt-writev.c: Likewise. | |
867 | ||
868 | 2002-11-09 Ulrich Drepper <drepper@redhat.com> | |
869 | ||
870 | * Versions: Export __connect from libpthread. | |
871 | Patch by Luca Barbieri <ldb@ldb.ods.org>. | |
872 | ||
873 | * Makefile (libpthread-routines): Add pt-raise. | |
874 | * sysdeps/unix/sysv/linux/raise.c: New file. | |
875 | * sysdeps/unix/sysv/linux/pt-raise.c: New file. | |
876 | * sysdeps/generic/pt-raise.c: New file. | |
877 | ||
878 | * pthread_cond_init.c: Initialize all data elements of the condvar | |
879 | structure. Patch by Luca Barbieri <ldb@ldb.ods.org>. | |
880 | ||
881 | * pthread_attr_init.c: Actually implement 2.0 compatibility version. | |
882 | * pthread_create.c: Likewise. | |
883 | ||
884 | * Makefile (tests): Add tst-key1, tst-key2, tst-key3. | |
885 | * tst-key1.c: New file. | |
886 | * tst-key2.c: New file. | |
887 | * tst-key3.c: New file. | |
888 | ||
889 | * Versions: Export pthread_detach for version GLIBC_2.0. | |
890 | Reported by Saurabh Desai <sdesai@austin.ibm.com>. | |
891 | ||
892 | 2002-11-08 Ulrich Drepper <drepper@redhat.com> | |
893 | ||
894 | * pthread_key_create.c: Terminate search after an unused key was found. | |
895 | Patch by Luca Barbieri <ldb@ldb.ods.org>. | |
896 | ||
897 | * sysdeps/unix/sysv/linux/i386/pthread_once.S: Return zero. | |
898 | Patch by Luca Barbieri <ldb@ldb.ods.org>. | |
899 | ||
900 | 2002-10-10 Ulrich Drepper <drepper@redhat.com> | |
901 | ||
902 | * sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Use slow generic | |
903 | dynamic lookup for errno in PIC. | |
904 | ||
905 | * allocatestack.c (get_cached_stack): Rearrange code slightly to | |
906 | release the stack lock as soon as possible. | |
907 | Call _dl_allocate_tls_init for TCB from the cache to re-initialize | |
908 | the static TLS block. | |
909 | (allocate_stack): Call _dl_allocate_tls_init for user-provided stack. | |
910 | ||
911 | * cancellation.c: Renamed from cancelation.c. | |
912 | * Makefile: Adjust accordingly. | |
913 | * pthreadP.h (CANCELLATION_P): Renamed from CANCELATION_P. | |
914 | * cleanup_defer.c: Use CANCELLATION_P. | |
915 | * pthread_testcancel.c: Likewise. | |
916 | * descr.h: Fix spelling in comments. | |
917 | * init.c: Likewise. | |
918 | * pthread_getattr_np.c: Likewise. | |
919 | * pthread_getschedparam.c: Likewise. | |
920 | * pthread_setschedparam.c: Likewise. | |
921 | * Versions: Likewise. | |
922 | ||
923 | * pt-pselect.c: New file. | |
924 | * Makefile (libpthread-routines): Add pt-pselect. | |
925 | * Versions: Add pselect. | |
926 | ||
927 | * tst-cancel4.c: New file. | |
928 | * Makefile (tests): Add tst-cancel4. | |
929 | ||
930 | 2002-10-09 Ulrich Drepper <drepper@redhat.com> | |
931 | ||
932 | * pthread_mutex_lock.c: Always record lock ownership. | |
933 | * pthread_mutex_timedlock.c: Likewise. | |
934 | * pthread_mutex_trylock.c: Likewise. | |
935 | ||
936 | * pt-readv.c: New file. | |
937 | * pt-writev.c: New file. | |
938 | * pt-creat.c: New file. | |
939 | * pt-msgrcv.c: New file. | |
940 | * pt-msgsnd.c: New file. | |
941 | * pt-poll.c: New file. | |
942 | * pt-select.c: New file. | |
943 | * pt-sigpause.c: New file. | |
944 | * pt-sigsuspend.c: New file. | |
945 | * pt-sigwait.c: New file. | |
946 | * pt-sigwaitinfo.c: New file. | |
947 | * pt-waitid.c: New file. | |
948 | * Makefile (libpthread-routines): Add pt-readv, pt-writev, pt-creat, | |
949 | pt-msgrcv, pt-msgsnd, pt-poll, pt-select, pt-sigpause, pt-sigsuspend, | |
950 | pt-sigwait, pt-sigwaitinfo, and pt-waitid. | |
951 | * Versions: Add all the new functions. | |
952 | ||
953 | * tst-exit1.c: New file. | |
954 | * Makefile (tests): Add tst-exit1. | |
955 | ||
956 | * sem_timedwait.c: Minor optimization for more optimal fastpath. | |
957 | ||
958 | 2002-10-08 Ulrich Drepper <drepper@redhat.com> | |
959 | ||
960 | * pt-fcntl.c: Only enable asynchronous cancellation for F_SETLKW. | |
961 | ||
962 | * pthread_join.c: Enable asynchronous cancellation around lll_wait_tid | |
963 | call. pthread_join is an official cancellation point. | |
964 | * pthread_timedjoin.c: Likewise. | |
965 | ||
966 | * pthread_cond_wait.c: Revert order in which internal lock are dropped | |
967 | and the condvar's mutex are retrieved. | |
968 | * pthread_cond_timedwait.c: Likewise. | |
969 | Reported by dice@saros.East.Sun.COM. | |
970 | ||
971 | 2002-10-07 Ulrich Drepper <drepper@redhat.com> | |
972 | ||
973 | * pthreadP.h: Cut out all type definitions and move them... | |
974 | * sysdeps/unix/sysv/linux/internaltypes.h: ...here. New file. | |
975 | * pthreadP.h: Include <internaltypes.h>. | |
976 | ||
977 | * sysdeps/unix/sysv/linux/i386/lowlevelsem.h (lll_sem_post): Little | |
978 | performance tweaks. | |
979 | ||
980 | * sem_trywait.c: Shuffle #includes around to get right order. | |
981 | * sem_timedwait.c: Likewise. | |
982 | * sem_post.c: Likewise. | |
983 | * sem_wait.c: Likewise. | |
984 | ||
985 | * nptl 0.3 released. | |
986 | ||
987 | * Makefile (tests): Add tst-signal3. | |
988 | * tst-signal3.c: New file. | |
989 | ||
990 | 2002-10-05 Ulrich Drepper <drepper@redhat.com> | |
991 | ||
992 | * sysdeps/unix/sysv/linux/i386/lowlevelsem.h: Tell the compiler that | |
993 | the asms modify the sem object. | |
994 | (__lll_sem_timedwait): Now takes struct sem* as first parameter. | |
995 | ||
996 | * sysdeps/unix/sysv/linux/i386/bits/semaphore.h (sem_t): Don't expose | |
997 | the actual members. | |
998 | * pthreadP.h (struct sem): New type. Actual semaphore type. | |
999 | * semaphoreP.h: Include pthreadP.h. | |
1000 | * sem_getvalue.c: Adjust to sem_t change. | |
1001 | * sem_init.c: Likewise. | |
1002 | * sem_open.c: Likewise. | |
1003 | * sem_post.c: Likewise. | |
1004 | * sem_timedwait.c: Likewise. | |
1005 | * sem_trywait.c: Likewise. | |
1006 | * sem_wait.c: Likewise. | |
1007 | ||
1008 | 2002-10-04 Ulrich Drepper <drepper@redhat.com> | |
1009 | ||
1010 | * Makefile (tests): Add tst-basic2, tst-exec1, tst-exec3, tst-exec3. | |
1011 | * tst-basic2.c: New file. | |
1012 | * tst-exec1.c: New file. | |
1013 | * tst-exec2.c: New file. | |
1014 | * tst-exec3.c: New file. | |
1015 | ||
1016 | * tst-fork1.c: Remove extra */. | |
1017 | ||
1018 | * nptl 0.2 released. The API for IA-32 is complete. |