]>
Commit | Line | Data |
---|---|---|
4fe53b3a UD |
1 | 1999-09-03 Andreas Schwab <schwab@suse.de> |
2 | ||
3 | * ptfork.c (__fork): Renamed from fork and use __libc_fork. Add | |
4 | fork as weak alias. | |
5 | (__vfork): New function, alias vfork. | |
6 | * Versions: Export __fork, vfork, and __vfork in libpthread. | |
7 | ||
1d0b89a4 UD |
8 | 1999-08-23 Andreas Schwab <schwab@suse.de> |
9 | ||
10 | * signals.c (pthread_sighandler): Add SIGCONTEXT_EXTRA_ARGS to | |
11 | call to signal handler. | |
12 | ||
6570e194 UD |
13 | 1999-08-20 Ulrich Drepper <drepper@cygnus.com> |
14 | ||
15 | * pthread.c (__pthread_reset_main_thread): Undo last change. | |
16 | (__pthread_kill_other_threads_np): Reset signal handlers for the | |
17 | signals we used in the thread implementation here. | |
18 | ||
70aea399 UD |
19 | 1999-08-19 Ulrich Drepper <drepper@cygnus.com> |
20 | ||
2b638910 | 21 | * pthread.c (__pthread_reset_main_thread): Reset signal handlers |
68ea6c18 | 22 | for the signals we used in the thread implementation [PR libc/1234]. |
2b638910 | 23 | |
264ec183 UD |
24 | * Versions: Export __pthread_kill_other_threads_np from libpthread |
25 | for GLIBC_2.1.2. | |
26 | ||
70aea399 UD |
27 | * signals.c: Pass sigcontext through wrapper to the user function. |
28 | ||
ff5fad16 UD |
29 | 1999-08-01 Ulrich Drepper <drepper@cygnus.com> |
30 | ||
31 | * Versions [ld.so] (GLIBC_2.0): Export __libc_internal_tsd_get and | |
32 | __libc_internal_tsd_set. | |
33 | ||
6b798621 UD |
34 | 1999-07-29 Andreas Jaeger <aj@arthur.rhein-neckar.de> |
35 | ||
36 | * manager.c: Remove inclusion of <linux/tasks.h> since it's not | |
37 | needed anymore. | |
38 | ||
76a16b8f UD |
39 | 1999-07-16 Andreas Jaeger <aj@arthur.rhein-neckar.de> |
40 | ||
4bf307e3 | 41 | * internals.h: Align _pthread_descr_struct to 32 bytes. |
76a16b8f UD |
42 | Reported by Tim Hockin <thockin@cobaltnet.com>, close PR |
43 | libc/1206. | |
44 | ||
5ef2d37b UD |
45 | 1999-07-09 Ulrich Drepper <drepper@cygnus.com> |
46 | ||
47 | * oldsemaphore.c (sem_compare_and_swap): Fix use of compare and | |
48 | swap function. | |
49 | ||
c2fa5b5a UD |
50 | 1999-07-09 Cristian Gafton <gafton@redhat.com> |
51 | ||
52 | * Makefile (libpthread-routines): Add oldsemaphore routine. | |
ae3c1571 UD |
53 | * Versions: Add sem_destroy, sem_getvalue, sem_init, sem_post, |
54 | sem_trywait, and sem_wait to GLIBC_2.1. | |
c2fa5b5a UD |
55 | * oldsemaphore.c: New file. |
56 | * semaphore.c: Add default_symbol_versions for the changed functions. | |
57 | (__new_sem_init): Rename from sem_init. | |
58 | (__new_sem_post): Rename from sem_post. | |
59 | (__new_sem_wait): Rename from sem_wait. | |
60 | (__new_sem_trywait): Rename from sem_trywait. | |
61 | (__new_sem_getvalue): Rename from sem_getvalue. | |
62 | (__new_sem_destroy): Rename from sem_destroy. | |
63 | ||
6a1db4ff UD |
64 | 1999-06-23 Robey Pointer <robey@netscape.com> |
65 | ||
66 | * internals.h: Added p_nextlock entry to separate queueing for a | |
67 | lock from queueing for a CV (sometimes a thread queues on a lock | |
68 | to serialize removing itself from a CV queue). | |
69 | * pthread.c: Added p_nextlock to initializers. | |
70 | * spinlock.c: Changed to use p_nextlock instead of p_nextwaiting. | |
71 | ||
019e7a64 UD |
72 | 1999-07-09 Ulrich Drepper <drepper@cygnus.com> |
73 | ||
74 | * manager.c (pthread_handle_create): Free mmap region after stack | |
75 | if clone failed. Patch by Kaz Kylheku <kaz@ashi.FootPrints.net>. | |
76 | ||
33d1a2c5 UD |
77 | 1999-05-23 Andreas Jaeger <aj@arthur.rhein-neckar.de> |
78 | ||
79 | * man/pthread_cond_init.man: Correct example. | |
80 | Reported by Tomas Berndtsson <tomas@nocrew.org>. | |
81 | ||
82 | * linuxthreads.texi (Condition Variables): Likewise. | |
83 | ||
407d26b7 UD |
84 | 1999-05-18 Jakub Jelinek <jj@ultra.linux.cz> |
85 | ||
86 | * sysdeps/sparc/sparc64/pt-machine.h (__compare_and_swap): Use | |
87 | casx not cas, also successful casx returns the old value in rd | |
88 | and not the new value. | |
89 | ||
431c33c0 UD |
90 | 1999-05-16 Xavier Leroy <Xavier.Leroy@inria.fr> |
91 | ||
92 | * manager.c: If pthread_create() is given a NULL attribute | |
93 | and the thread manager runs with a realtime policy, set the | |
94 | scheduling policy of the newly created thread back to SCHED_OTHER. | |
95 | * manager.c: If the PTHREAD_INHERIT_SCHED attribute is given, | |
96 | initialize the schedpolicy field of new_thread->p_start_args | |
97 | to that of the calling thread. | |
98 | ||
2c68584c UD |
99 | 1999-04-29 Ulrich Drepper <drepper@cygnus.com> |
100 | ||
101 | * sysdeps/sparc/sparc64/pt-machine.h (__compare_and_swap): cas | |
102 | instruction does not allow memory element to use offset. | |
103 | ||
390500b1 UD |
104 | 1999-04-28 Ulrich Drepper <drepper@cygnus.com> |
105 | ||
106 | * manager.c (pthread_allocate_stack): Optimize initialization of new | |
107 | thread descriptor. | |
108 | ||
89afc233 UD |
109 | * sysdeps/pthread/bits/libc-lock.h (__libc_lock_define_initialized): |
110 | Don't use initializer since it is all zeroes. | |
111 | (__libc_once_define): Likewise. | |
112 | ||
1e76ce9c UD |
113 | 1999-04-16 Andreas Jaeger <aj@arthur.rhein-neckar.de> |
114 | ||
115 | * sysdeps/arm/Implies: Removed since cmpxchg/no-cmpxchg | |
116 | doesn't exist anymore. | |
117 | * sysdeps/i386/Implies: Likewise. | |
118 | * sysdeps/m68k/Implies: Likewise. | |
119 | * sysdeps/mips/Implies: Likewise. | |
120 | * sysdeps/powerpc/Implies: Likewise. | |
121 | * sysdeps/sparc/sparc32/Implies: Likewise. | |
122 | * sysdeps/sparc/sparc64/Implies: Likewise. | |
123 | ||
46a4682d UD |
124 | 1999-04-15 Ulrich Drepper <drepper@cygnus.com> |
125 | ||
126 | * sysdeps/alpha/bits/semaphore.h: Removed. | |
127 | * sysdeps/powerpc/bits/semaphore.h: Removed. | |
128 | * sysdeps/pthread/cmpxchg/bits/semaphore.h: Removed. | |
129 | * sysdeps/pthread/no-cmpxchg/bits/semaphore.h: Removed. | |
130 | * Makefile (headers): Remove bits/semaphore.h. | |
131 | ||
132 | * semaphore.h: Define _pthread_descr if necessary. | |
133 | Don't include limits.h. Define SEM_VALUE_MAX directly. | |
134 | Define SEM_FAILED. | |
135 | (sem_t): Protect element names with leading __. | |
136 | Add declarations for sem_close, sem_open, and sem_unlink. | |
137 | * semaphore.c: Adjust all functions for new element names. | |
138 | Define sem_close, sem_open, and sem_unlink. | |
139 | * Versions (libthread): Add sem_close, sem_open, and sem_unlink for | |
140 | GLIBC_2.1.1. | |
141 | * sysdeps/pthread/bits/pthreadtypes.h: Define _pthread_descr only if | |
142 | necessary. | |
143 | ||
ea48e2c4 UD |
144 | 1999-03-16 H.J. Lu <hjl@gnu.org> |
145 | ||
146 | * specific.c (pthread_key_delete): Check th->p_terminated to see | |
147 | if the thread is running. | |
148 | ||
670af0d9 UD |
149 | * Versions (__libc_internal_tsd_get, __libc_internal_tsd_set): |
150 | Added to GLIBC_2.0 for libc.so. | |
151 | ||
0543cd26 UD |
152 | 1999-02-12 H.J. Lu <hjl@gnu.org> |
153 | ||
154 | * Versions (__libc_current_sigrtmin, __libc_current_sigrtmax, | |
155 | __libc_allocate_rtsig): Added to GLIBC_2.1. | |
156 | ||
157 | * internals.h (DEFAULT_SIG_RESTART): Removed. | |
158 | (DEFAULT_SIG_CANCEL): Removed. | |
159 | ||
160 | * pthread.c (init_rtsigs, __libc_current_sigrtmin, | |
161 | __libc_current_sigrtmax, __libc_allocate_rtsig): New functions. | |
162 | (__pthread_sig_restart, __pthread_sig_cancel, | |
163 | __pthread_sig_debug): Initialized. | |
164 | (pthread_initialize): Call init_rtsigs () to initialize | |
165 | real-time signals. | |
166 | ||
f5492334 UD |
167 | 1999-02-03 H.J. Lu <hjl@gnu.org> |
168 | ||
169 | * manager.c (__pthread_manager): Do block __pthread_sig_debug. | |
170 | Don't restart the thread which sent REQ_DEBUG. | |
171 | (pthread_start_thread): Check if __pthread_sig_debug > 0 | |
172 | before debugging. | |
173 | ||
174 | * pthread.c (__pthread_initialize_manager): Suspend ourself | |
175 | after sending __pthread_sig_debug to gdb instead of | |
176 | __pthread_sig_cancel. | |
177 | ||
8f0302ee UD |
178 | 1999-01-24 H.J. Lu <hjl@gnu.org> |
179 | ||
180 | * manager.c (__pthread_manager): Delete __pthread_sig_debug | |
181 | from mask if __pthread_sig_debug > 0. | |
182 | (pthread_handle_create): Increment __pthread_handles_num. | |
183 | ||
184 | * manager.c (pthread_handle_create): Don't pass CLONE_PTRACE to clone. | |
185 | * pthread.c (__pthread_initialize_manager): Likewise. | |
186 | ||
187 | * pthread.c (pthread_initialize): Use __libc_allocate_rtsig (1) | |
188 | instead of __libc_allocate_rtsig (2). | |
189 | (__pthread_initialize_manager): Send __pthread_sig_debug to gdb | |
190 | instead of __pthread_sig_cancel. | |
191 | (pthread_handle_sigdebug): Fix comments. | |
192 | ||
82df2969 UD |
193 | 1999-01-21 Ulrich Drepper <drepper@cygnus.com> |
194 | ||
195 | * manager.c (pthread_allocate_stack): Set | |
196 | __pthread_nonstandard_stacks if user-specified stack is used. | |
197 | ||
482eec0d UD |
198 | 1999-01-16 Ulrich Drepper <drepper@cygnus.com> |
199 | ||
200 | * sysdeps/unix/sysv/linux/bits/posix_opt.h: Add _LFS_ASYNCHRONOUS_IO, | |
201 | _LFS_LARGEFILE, _LFS64_LARGEFILE, and _LFS64_STDIO from Unix98. | |
202 | ||
b92ad8d6 UD |
203 | 1999-01-07 Xavier Leroy <Xavier.Leroy@inria.fr> |
204 | ||
205 | * pthread.c: Use a third signal __pthread_sig_debug distinct | |
206 | from __pthread_sig_cancel to notify gdb when a thread is | |
207 | created | |
208 | * manager.c: Likewise. | |
209 | * internals.h: Likewise. | |
210 | * signals.c: The implementation of sigwait(s) assumed that | |
211 | all signals in s have signal handlers already attached. | |
212 | This is not required by the standard, so make it work | |
213 | also if some of the signals have no handlers. | |
214 | ||
34992338 UD |
215 | 1999-01-05 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> |
216 | ||
217 | * linuxthreads.texi: Remove pointers from first @node. Move old | |
218 | @node spec inside comment. | |
219 | ||
118bad87 UD |
220 | 1998-12-31 Ulrich Drepper <drepper@cygnus.com> |
221 | ||
222 | * sysdeps/pthread/bits/stdio-lock.h: Define _IO_lock_lock and | |
223 | _IO_lock_unlock. | |
224 | ||
c046e7a5 UD |
225 | 1998-12-29 Ulrich Drepper <drepper@cygnus.com> |
226 | ||
227 | * semaphore.c (sem_trywait): Don't forget to unlock the semaphore | |
228 | lock. Patch by Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>. | |
229 | ||
361d49e6 UD |
230 | 1998-12-21 Ulrich Drepper <drepper@cygnus.com> |
231 | ||
232 | * manager.c: Threads now send __pthread_sig_cancel on termination. | |
233 | Change clone call and signal masks. | |
234 | * thread.c (pthread_handle_sigrestart): Remove special code for | |
235 | manager. | |
236 | (pthread_handle_sigcancel): In manager thread call | |
237 | __pthread_manager_sighandler. | |
238 | * sysdeps/i386/pt-machine.h (__compare_and_swap): Add memory clobber. | |
239 | * sysdeps/i386/i686/pt-machine.h: Likewise. | |
240 | Patches by Xavier Leroy. | |
241 | ||
4260bc74 UD |
242 | 1998-12-14 Ulrich Drepper <drepper@cygnus.com> |
243 | ||
361d49e6 | 244 | * spinlock.c (__pthread_unlock): Don't crash if called for an |
fbaf6e72 UD |
245 | untaken mutex. Reported by Ruslan V. Brushkoff <rus@Snif.Te.Net.UA>. |
246 | ||
4260bc74 UD |
247 | * Examples/ex6.c: Unbuffer stdout and reduce sleep time to reduce |
248 | overall runtime. | |
249 | ||
e3743e2f UD |
250 | 1998-12-13 Ulrich Drepper <drepper@cygnus.com> |
251 | ||
252 | * Examples/ex3.c: Wait until all threads are started before | |
253 | searching for the number to avoid race condition on very fast | |
254 | systems. | |
255 | ||
8632b240 UD |
256 | 1998-12-08 Andreas Jaeger <aj@arthur.rhein-neckar.de> |
257 | ||
258 | * sysdeps/pthread/pthread.h: Remove __pthread_setcanceltype | |
2eda5d9b | 259 | declaration since it's not needed. |
8632b240 UD |
260 | |
261 | * sysdeps/pthread/pthread.h: Move internal functions to ... | |
262 | * internals.h: ...here. | |
263 | ||
a6ff34d7 UD |
264 | 1998-12-02 H.J. Lu <hjl@gnu.org> |
265 | ||
266 | * pthread.c (__pthread_sig_restart): Initiliaze to 0 if | |
267 | SIGRTMIN is defined. | |
268 | (__pthread_sig_cancel): Likewise. | |
269 | ||
628a0aa1 UD |
270 | 1998-12-01 Andreas Jaeger <aj@arthur.rhein-neckar.de> |
271 | ||
272 | * wrapsyscall.c: Include <sys/mman.h> for msync, | |
273 | <stdlib.h> for system and <termios.h> for tcdrain prototype. | |
274 | Correct msync declaration. | |
275 | ||
348ed515 UD |
276 | 1998-11-29 Roland McGrath <roland@baalperazim.frob.com> |
277 | ||
278 | * sysdeps/pthread/bits/libc-tsd.h (__libc_tsd_define, __libc_tsd_get, | |
279 | __libc_tsd_set): New macros for new interface. | |
280 | * no-tsd.c: New file, provide uninitialized defns of | |
281 | __libc_internal_tsd_get and __libc_internal_tsd_set. | |
282 | * Makefile (routines): Add no-tsd. | |
283 | ||
284 | 1998-10-12 Roland McGrath <roland@baalperazim.frob.com> | |
285 | ||
286 | * internals.h: Include <bits/libc-tsd.h>, not <bits/libc-lock.h>. | |
287 | * sysdeps/pthread/bits/libc-lock.h (__libc_internal_tsd_get, | |
288 | __libc_internal_tsd_set): Move decls to ... | |
289 | * sysdeps/pthread/bits/libc-tsd.h: New file for __libc_internal_tsd_* | |
290 | declarations. | |
291 | ||
292 | * sysdeps/pthread/bits/libc-lock.h (__libc_internal_tsd_get, | |
293 | __libc_internal_tsd_set): Make these pointers to functions, not | |
294 | functions; remove #pragma weak decls for them. | |
295 | * specific.c (__libc_internal_tsd_get, __libc_internal_tsd_set): | |
296 | Define static functions and initialized pointers to them. | |
297 | ||
97dac76c UD |
298 | 1998-11-18 Ulrich Drepper <drepper@cygnus.com> |
299 | ||
300 | * Makefile (CFLAGS-mutex.c): Define as -D__NO_WEAK_PTHREAD_ALIASES. | |
301 | (CFLAGS-specific.c): Likewise. | |
302 | (CFLAGS-pthread.c): Likewise. | |
303 | (CFLAGS-ptfork.c): Likewise. | |
304 | (CFLAGS-cancel.c): Likewise. | |
305 | * sysdeps/pthread/bits/libc-lock.h: Don't mark __pthread_* functions | |
306 | as weak references if __NO_WEAK_PTHREAD_ALIASES is defined. | |
307 | ||
308 | * mutex.c (pthread_mutex_init): Define as strong symbol. | |
309 | (pthread_mutex_destroy): Likewise. | |
310 | (pthread_mutex_trylock): Likewise. | |
311 | (pthread_mutex_lock): Likewise. | |
312 | (pthread_mutex_unlock): Likewise. | |
313 | (pthread_mutexattr_init): Likewise. | |
314 | (pthread_mutexattr_destroy): Likewise. | |
315 | (pthread_once): Likewise. | |
316 | * ptfork.c (pthread_atfork): Likewise. | |
317 | * specific.c (pthread_key_create): Likewise. | |
318 | (pthread_setspecific): Likewise. | |
319 | (pthread_getspecific): Likewise. | |
320 | ||
8b7fb588 UD |
321 | 1998-11-15 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> |
322 | ||
323 | * linuxthreads.texi: Fix punctuation after xref. | |
324 | ||
d2537a47 UD |
325 | 1998-11-10 H.J. Lu <hjl@gnu.org> |
326 | ||
327 | * sysdeps/unix/sysv/linux/bits/local_lim.h: Undefine NR_OPEN | |
328 | if it is defined in <linux/limits.h>. | |
329 | ||
d5cabaa4 UD |
330 | 1998-10-29 14:28 Ulrich Drepper <drepper@cygnus.com> |
331 | ||
332 | * spinlock.h (__pthread_trylock): Define inline. | |
333 | (__pthread_lock): Add extra parameter to declaration. Declare | |
334 | using internal_function. | |
335 | (__pthread_unlock): Declare using internal_function. | |
336 | * spinlock.c (__pthread_lock): Add new parameter. Use it instead | |
337 | of local variable self. Avoid recomputing self. Define using | |
338 | internal_function. | |
339 | (__pthread_trylock): Remove. | |
340 | (__pthread_unlock): Define using internal_function. | |
341 | * cancel.c: Adjust for __pthread_lock interface change. Use already | |
342 | computed self value is possible. | |
343 | * condvar.c: Likewise. | |
344 | * join.c: Likewise. | |
345 | * manager.c: Likewise. | |
346 | * mutex.c: Likewise. | |
347 | * pthread.c: Likewise. | |
348 | * rwlock.c: Likewise. | |
349 | * semaphore.c: Likewise. | |
350 | * signals.c: Likewise. | |
351 | ||
c70ca1fa UD |
352 | 1998-10-27 13:46 Ulrich Drepper <drepper@cygnus.com> |
353 | ||
354 | * sysdeps/pthread/pthread.h (struct _pthread_cleanup_buffer): Prepend | |
355 | __ to field names of the struct. | |
356 | * sysdeps/pthread/bits/pthreadtypes.h (struct _pthread_fastlock): | |
357 | Likewise. | |
358 | (pthread_attr_t): Likewise. | |
359 | (pthread_cond_t): Likewise. | |
360 | (pthread_condattr_t): Likewise. | |
361 | (pthread_mutex_t): Likewise. | |
362 | (pthread_mutexattr_t): Likewise. | |
363 | (pthread_rwlock_t): Likewise. | |
364 | (pthread_rwlockattr_t): Likewise. | |
365 | * attr.c: Adjust for pthread.h and pthreadtypes.h change. | |
366 | * cancel.c: Likewise. | |
367 | * condvar.c: Likewise. | |
368 | * manager.c: Likewise. | |
369 | * mutex.c: Likewise. | |
370 | * pthread.c: Likewise. | |
371 | * ptlongjmp.c: Likewise. | |
372 | * rwlock.c: Likewise. | |
373 | * spinlock.c: Likewise. | |
374 | ||
a5d1d726 UD |
375 | 1998-10-09 Ulrich Drepper <drepper@cygnus.com> |
376 | ||
7ccc548b UD |
377 | * sysdeps/i386/pt-machine.h (get_eflags, set_eflags): Mark these |
378 | also with PT_EI. | |
379 | ||
a5d1d726 UD |
380 | * sysdeps/i386/i686/pt-machine.h: Remove unused inline |
381 | definitions. | |
382 | ||
9a29bc37 UD |
383 | * Makefile (libpthread-routines): Add pt-machine. |
384 | * pt-machine.c: New file. | |
385 | * sysdeps/alpha/pt-machine.h: Define PT_EI as extern inline is not | |
386 | yet defined. Use PT_EI in extern inline definitions. | |
387 | * sysdeps/arm/pt-machine.h: Likewise. | |
388 | * sysdeps/i386/pt-machine.h: Likewise. | |
389 | * sysdeps/i386/i686/pt-machine.h: Likewise. | |
390 | * sysdeps/m68k/pt-machine.h: Likewise. | |
391 | * sysdeps/mips/pt-machine.h: Likewise. | |
392 | * sysdeps/powerpc/pt-machine.h: Likewise. | |
393 | * sysdeps/sparc/sparc32/pt-machine.h: Likewise. | |
394 | * sysdeps/sparc/sparc64/pt-machine.h: Likewise. | |
395 | ||
c10bb795 UD |
396 | 1998-10-02 Andreas Jaeger <aj@arthur.rhein-neckar.de> |
397 | ||
398 | * semaphore.h: Include <sys/types.h> so that _pthread_descr | |
399 | is declared. | |
400 | ||
401 | 1998-09-15 David S. Miller <davem@pierdol.cobaltmicro.com> | |
402 | ||
403 | * sysdeps/sparc/sparc32/pt-machine.h (INIT_THREAD_SELF): Add nr | |
404 | argument. | |
405 | * sysdeps/sparc/sparc64/pt-machine.h (INIT_THREAD_SELF): Likewise. | |
406 | ||
407 | 1998-09-12 14:24 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu> | |
408 | ||
409 | * linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h: Add | |
410 | multiple inclusion guard. | |
411 | ||
5e0889da UD |
412 | 1998-09-02 11:08 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
413 | ||
414 | * signals.c (sigaction): Check that sig is less than NSIG to avoid | |
415 | array index overflow. | |
416 | ||
6796bc80 UD |
417 | 1998-09-06 10:56 Ulrich Drepper <drepper@cygnus.com> |
418 | ||
419 | * sysdeps/pthread/semaphore.h: New file. | |
420 | ||
be935610 UD |
421 | 1998-09-06 09:08 Ulrich Drepper <drepper@cygnus.com> |
422 | ||
423 | * sysdeps/pthread/bits/libc-lock.h (enum __libc_tsd_key_t): Add | |
424 | _LIBC_TSD_KEY_DL_ERROR. | |
425 | ||
bfce746a UD |
426 | 1998-08-31 Ulrich Drepper <drepper@cygnus.com> |
427 | ||
7afab53d | 428 | * sysdeps/i386/i686/pt-machine.h (testandset): Add memory clobber. |
6a805a0b | 429 | * sysdeps/i386/pt-machine.h: Likewise. |
bfce746a UD |
430 | Suggested by Roland McGrath. |
431 | ||
75311719 UD |
432 | 1998-08-28 13:58 Ulrich Drepper <drepper@cygnus.com> |
433 | ||
434 | * internals.h: Also define THREAD_GETMEM_NC and THREAD_SETMEM_NC to | |
435 | access thread data with non-constant offsets. | |
436 | * specific.c: Use THREAD_GETMEM_NC and THREAD_SETMEM_NC where | |
437 | necessary. | |
438 | ||
439 | * sysdeps/i386/useldt.h: Fix typo. Add THREAD_GETMEM_NC and | |
440 | THREAD_SETMEM_NC definitions. | |
441 | ||
442 | * sysdeps/sparc/sparc32/pt-machine.h: Define THREAD_GETMEM_NC and | |
443 | THREAD_SETMEM_NC. | |
444 | * sysdeps/sparc/sparc64/pt-machine.h: Likewise. | |
445 | ||
00a2f9aa UD |
446 | 1998-08-26 15:46 Ulrich Drepper <drepper@cygnus.com> |
447 | ||
448 | * internals.h: Define THREAD_GETMEM and THREAD_SETMEM to default if | |
449 | not already defined. | |
450 | (struct _pthread_descr_struct): Add p_self and p_nr field. | |
451 | * manager.c (__pthread_handles): Define second element to point | |
452 | to manager thread. | |
453 | (__pthread_handles_num): Initialize to 2. | |
454 | (__pthread_manager): Use INIT_THREAD_SELF with two arguments. | |
455 | (pthread_start_thread): Likewise. | |
456 | (pthread_handle_create): Start search for free slot at entry 2. | |
457 | Initialize new fields p_self and p_nr. | |
458 | Call __clone with CLONE_PTRACE if available. | |
459 | (pthread_free): Call FREE_THREAD_SELF if available. | |
460 | * pthread.c (__pthread_initial_thread): Initialize new fields. | |
461 | (__pthread_manager_thread): Likewise. | |
462 | (__pthread_initialize_manager): Call __clone with CLONE_PTRACE. | |
463 | ||
464 | * cancel.c: Use THREAD_GETMEM and THREAD_SETMEM to access the | |
465 | elements of the thread descriptor. | |
466 | * condvar.c: Likewise. | |
467 | * errno.c: Likewise. | |
468 | * join.c: Likewise. | |
469 | * manager.c: Likewise. | |
470 | * pthread.c: Likewise. | |
471 | * ptlongjmp.c: Likewise. | |
472 | * semaphore.c: Likewise. | |
473 | * signals.c: Likewise. | |
474 | * specific.c: Likewise. | |
475 | * spinlock.c: Likewise. | |
476 | ||
477 | * sysdeps/alpha/pt-machine.h (INIT_THREAD_SELF): Add extra parameter. | |
478 | ||
479 | * sysdeps/i386/useldt.h: New file. | |
480 | * sysdeps/i386/i686/pt-machine.h: Show how to use this file. | |
481 | ||
482 | * sysdeps/sparc/sparc32/pt-machine.h: Define THREAD_GETMEM and | |
483 | THREAD_SETMEM using __thread_self. | |
484 | * sysdeps/sparc/sparc64/pt-machine.h: Likewise. | |
485 | ||
ed1ac6a2 UD |
486 | 1998-08-24 Geoff Keating <geoffk@ozemail.com.au> |
487 | ||
488 | * spinlock.c (__pthread_lock): Reset p_nextwaiting to NULL if it | |
489 | turned out that we didn't need to queue after all. | |
490 | ||
491 | 1998-08-22 Geoff Keating <geoffk@ozemail.com.au> | |
492 | ||
493 | * sysdeps/powerpc/pt-machine.h: Remove testandset, it's not used | |
494 | and wastes space; correct types. | |
495 | ||
cf0fd016 UD |
496 | 1998-08-08 11:18 H.J. Lu <hjl@gnu.org> |
497 | ||
498 | * signals.c (sigaction): Handle NULL argument. | |
499 | ||
d358336f UD |
500 | 1998-08-04 Ulrich Drepper <drepper@cygnus.com> |
501 | ||
502 | * sysdeps/unix/sysv/linux/bits/sigthread.h: Use __sigset_t instead | |
503 | of sigset_t. | |
504 | ||
7cabd57c UD |
505 | 1998-08-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
506 | ||
507 | * Makefile (linuxthreads-version): Extract correct number from | |
508 | Banner. | |
509 | ||
ddbf7fef UD |
510 | 1998-07-29 Xavier Leroy <Xavier.Leroy@inria.fr> |
511 | ||
512 | * Banner: Bump version number to 0.8 | |
513 | * FAQ.html: Many updates, in particular w.r.t. debugging. | |
514 | * manager.c: Support for non-default stacksize for | |
515 | LinuxThreads-allocated stacks; | |
516 | don't use guard pages for stacks with default size, rely on | |
517 | rlimit(RLIMIT_STACK) instead (it's cheaper). | |
518 | * attr.c: Likewise. | |
519 | * cancel.c: Use __pthread_sig_cancel and __pthread_sig_restart | |
520 | everywhere instead of PTHREAD_SIG_CANCEL and PTHREAD_SIG_RESTART. | |
521 | * condvar.c: Likewise. | |
522 | * internals.h: Likewise. | |
523 | * restart.h: Likewise. | |
524 | * signals.c: Likewise. | |
525 | * pthread.c: Likewise; set rlimit(RLIMIT_STACK) as we need it. | |
526 | ||
6c202c68 UD |
527 | 1998-07-23 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
528 | ||
529 | * weaks.c: Define pthread_mutexattr_[sg]ettype instead of | |
530 | __pthread_mutexattr_[sg]ettype. Add more weak aliases. | |
531 | * Versions: Put __pthread_mutexattr_settype under version | |
532 | GLIBC_2.0. Don't export __pthread_mutexattr_setkind_np and | |
533 | __pthread_mutexattr_gettype. | |
534 | ||
535 | 1998-07-23 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> | |
536 | ||
537 | * sysdeps/pthread/bits/libc-lock.h: Make | |
538 | __pthread_mutexattr_settype weak. Don't make | |
539 | __pthread_mutexattr_setkind_np weak. | |
540 | ||
50304ef0 UD |
541 | 1998-07-16 10:52 Ulrich Drepper <drepper@cygnus.com> |
542 | ||
543 | * manager.c (pthread_handle_create): Check whether sched_setscheduler | |
544 | call can succeed here. | |
545 | ||
546 | * mutex.c: Define __pthread_mutexattr_settype and make | |
547 | __pthread_mutexattr_setkind_np an alias. | |
548 | Likewise for __pthread_mutexattr_gettype. | |
549 | ||
550 | 1998-07-15 11:00 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu> | |
551 | ||
552 | * attr.c (pthread_attr_setschedpolicy): Don't check whether caller | |
553 | is root. | |
554 | ||
c764b9a7 UD |
555 | 1998-07-14 19:38 Ulrich Drepper <drepper@cygnus.com> |
556 | ||
557 | * sysdeps/pthread/bits/libc-lock.h: Define __libc_cleanup_end. | |
558 | ||
ceb27555 UD |
559 | 1998-07-11 Andreas Jaeger <aj@arthur.rhein-neckar.de> |
560 | ||
561 | * Examples/ex6.c: Include <unistd.h> for usleep. | |
562 | ||
b1209f90 UD |
563 | 1998-06-13 11:04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
564 | ||
565 | * Examples/ex4.c (main): Use exit, not pthread_exit. | |
566 | ||
6077fe6e UD |
567 | 1998-07-09 13:39 Ulrich Drepper <drepper@cygnus.com> |
568 | ||
569 | * Versions: Add __pthread_mutexattr_gettype and | |
570 | __pthread_mutexattr_settype. | |
571 | * lockfile.c: Use __pthread_mutexattr_settype instead of | |
572 | __pthread_mutexattr_setkind_np. | |
573 | * mutex.c: Define __pthread_mutexattr_gettype and | |
574 | __pthread_mutexattr_settype. | |
575 | * weak.c: Likewise. | |
e918a7fe UD |
576 | * sysdeps/pthread/pthread.h: Declare __pthread_mutexattr_gettype and |
577 | __pthread_mutexattr_settype. | |
578 | * sysdeps/pthread/bits/libc-lock.h (__libc_lock_init_recursive): | |
579 | Use __pthread_mutexattr_settype. | |
6077fe6e | 580 | |
4bae5567 UD |
581 | 1998-07-08 22:26 Ulrich Drepper <drepper@cygnus.com> |
582 | ||
583 | * Versions: Add pthread_mutexattr_gettype, pthread_mutexattr_settype. | |
584 | * mutex.c: Define weak alias pthread_mutexattr_gettype and | |
585 | pthread_mutexattr_settype. | |
586 | * sysdeps/pthread/pthread.h: Declare these functions. | |
587 | Move pthread_sigmask and pthread_kill declaration in separate header. | |
588 | * sysdeps/unix/sysv/linux/bits/sigthread.h: New file. | |
589 | ||
0302fece UD |
590 | 1998-07-07 15:20 Ulrich Drepper <drepper@cygnus.com> |
591 | ||
592 | * Makefile: Add rules to compile and run tests. | |
593 | * Examples/ex1.c: Little changes to fix warnings. | |
594 | * Examples/ex2.c: Likewise. | |
595 | * Examples/ex3.c: Likewise. | |
596 | * Examples/ex4.c: Likewise. | |
597 | * Examples/ex5.c: Likewise. | |
598 | * Examples/ex6.c: New file. | |
599 | ||
77ccaba1 UD |
600 | 1998-07-05 11:54 Ulrich Drepper <drepper@cygnus.com> |
601 | ||
6777b467 | 602 | * Versions: Add pthread_attr_init to GLIBC_2.1 version in libc. |
77ccaba1 | 603 | |
ba9234d9 UD |
604 | 1998-07-01 Andreas Jaeger <aj@arthur.rhein-neckar.de> |
605 | ||
606 | * attr.c: Include <string.h>. | |
607 | ||
d64fae6a UD |
608 | 1998-06-30 11:47 Ulrich Drepper <drepper@cygnus.com> |
609 | ||
610 | * attr.c: Include errno.h. Use memcpy to copy sched_param. | |
611 | * internals.h: Include limits.h. | |
612 | * manager.c: Use memcpy to copy sched_param. | |
613 | * ptfork.c: Include errno.h. | |
614 | * pthread.c: Likewise. | |
615 | * semaphore.c: Likewise. | |
616 | * specific.c: Likewise. | |
617 | * spinlock.h: Likewise. | |
618 | * sysdeps/pthread/pthread.h: Include only allowed headers. Move | |
619 | type definition to ... | |
620 | * sysdeps/pthread/bits/pthreadtypes.h: ...here. New file. | |
621 | ||
fdacb17d UD |
622 | 1998-06-29 12:34 Ulrich Drepper <drepper@cygnus.com> |
623 | ||
624 | * sysdeps/pthread/pthread.h: Use __PMT not __P for function pointers. | |
625 | ||
626 | * sysdeps/pthread/pthread.h: Define various PTHREAD_* symbols also | |
627 | as macros as demanded in POSIX.1, Annex C. | |
628 | ||
629 | 1998-06-29 12:29 Ulrich Drepper <drepper@cygnus.com> | |
630 | ||
631 | * internals.h (struct pthread_request): For free use pthread_t | |
632 | instead of pthread_descr. | |
633 | * join.c (pthread_join): Pass thread_id, not th to manager. | |
634 | (pthread_detach): Likewise. | |
635 | * manager.c (__pthread_manager): Except thread ID in FREE_REQ case. | |
636 | (pthread_exited): Remove detached queue code. | |
637 | (pthread_handle_free): Expect thread ID parameter and use it to | |
638 | validate the thread decsriptor. Don't use detached queue. | |
639 | Patches by Xavier Leroy. | |
640 | ||
641 | 1998-06-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> | |
642 | ||
643 | * libpthread.map: Export accept, longjmp, sigaction, siglongjmp, | |
644 | _IO_flockfile, _IO_ftrylockfile, _IO_funlockfile, | |
645 | __pthread_atfork, __pthread_key_create, __pthread_once. | |
646 | * internals.h: Doc fix. | |
647 | * pthread.c (__pthread_initialize): Define again. | |
648 | ||
e138a800 UD |
649 | 1998-06-26 Ulrich Drepper <drepper@cygnus.com> |
650 | ||
026d5011 UD |
651 | * manager.c (pthread_exited): If thread is not detached put it on |
652 | special list. | |
653 | (pthread_handle_free): If thread is not on list with living threads | |
654 | search on list with detached threads. | |
655 | ||
b195f6bc UD |
656 | * sysdeps/pthread/pthread.h (PTHREAD_RWLOCK_INITIALIZER): Correct |
657 | for new definition of pthread_rwlock_t. | |
658 | ||
e138a800 UD |
659 | * spinlock.c: Correct test whether to compile |
660 | __pthread_compare_and_swap or not. | |
661 | ||
3387a425 UD |
662 | 1998-06-25 19:27 Ulrich Drepper <drepper@cygnus.com> |
663 | ||
664 | * attr.c: Finish user stack support. Change locking code to be safe | |
665 | in situations with different priorities. | |
666 | * cancel.c: Likewise. | |
667 | * condvar.c: Likewise. | |
668 | * internals.h: Likewise. | |
669 | * join.c: Likewise. | |
670 | * manager.c: Likewise. | |
671 | * mutex.c: Likewise. | |
672 | * pthread.c: Likewise. | |
673 | * ptlongjmp.c: Likewise. | |
674 | * queue.h: Likewise. | |
675 | * rwlock.c: Likewise. | |
676 | * semaphore.c: Likewise. | |
677 | * semaphore.h: Likewise. | |
678 | * signals.c: Likewise. | |
679 | * spinlock.c: Likewise. | |
680 | * spinlock.h: Likewise. | |
75c3a84f | 681 | * sysdeps/pthread/pthread.h: Likewise. |
df4099e8 | 682 | Patches by Xavier Leroy. |
3387a425 | 683 | |
0ca7e46e | 684 | * sysdeps/i386/i686/pt-machine.h: New file. |
75c3a84f | 685 | |
3387a425 UD |
686 | 1998-06-25 Ulrich Drepper <drepper@cygnus.com> |
687 | ||
688 | * sysdeps/pthread/pthread.h: Make [sg]et_stacksize and | |
689 | [sg]et_stackaddr prototypes always available. | |
690 | ||
691 | * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define | |
692 | _POSIX_THREAD_ATTR_STACKSIZE and _POSIX_THREAD_ATTR_STACKADDR. | |
693 | ||
d47aac39 UD |
694 | 1998-06-24 Ulrich Drepper <drepper@cygnus.com> |
695 | ||
696 | * manager.c (pthread_free): Undo patch from 980430. | |
697 | Reported by David Wragg <dpw@doc.ic.ac.uk>. | |
698 | ||
69f234e8 UD |
699 | 1998-06-09 15:07 Ulrich Drepper <drepper@cygnus.com> |
700 | ||
701 | * manager.c: Define __pthread_manager_adjust_prio and use it to | |
702 | increase priority when needed. | |
703 | * internals.h: Add prototype for __pthread_manager_adjust_prio. | |
704 | * mutex.c: Optimize mutexes to wake up only one thread. | |
768cbca8 | 705 | * pthread.c: Move PID of manager for global variable in structure |
69f234e8 UD |
706 | element. |
707 | Patches by Xavier Leroy. | |
708 | ||
c0fb8a56 UD |
709 | 1998-06-07 13:47 Ulrich Drepper <drepper@cygnus.com> |
710 | ||
711 | * sysdeps/pthread/bits/libc-lock.h: Optimize cleanup handlers a bit. | |
712 | ||
c6bd526f UD |
713 | 1998-06-03 Andreas Jaeger <aj@arthur.rhein-neckar.de> |
714 | ||
715 | * attr.c: Correct typo. | |
716 | ||
f9119f49 UD |
717 | 1998-05-01 Ulrich Drepper <drepper@cygnus.com> |
718 | ||
719 | * manager.c (pthread_free): Unmap guard before the stack. | |
720 | Patch by Matthias Urlichs. | |
721 | ||
3dd2c3e2 UD |
722 | 1998-04-30 Ulrich Drepper <drepper@cygnus.com> |
723 | ||
724 | * manager.c (pthread_free): Detect already free child. | |
725 | Patch by Xavier Leroy, reported by Matthias Urlichs. | |
726 | ||
0111b224 UD |
727 | 1998-04-23 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
728 | ||
729 | * Makefile (linuxthreads-version): Renamed back from | |
730 | libpthread-version. | |
731 | ||
f12944ec UD |
732 | 1998-04-21 Ulrich Drepper <drepper@cygnus.com> |
733 | ||
26e119f1 | 734 | * ptlongjmp.c: Add prototypes for __libc_siglongjmp and |
f12944ec UD |
735 | __libc_longjmp. |
736 | ||
8619129f UD |
737 | 1998-04-20 14:55 Ulrich Drepper <drepper@cygnus.com> |
738 | ||
739 | * Makefile (libpthread-routines): Add ptlongjmp and spinlock. | |
740 | * internals.h: Add definitions for new spinlock implementation. | |
741 | * ptlongjmp.c: New file. | |
742 | * spinlock.c: New file. | |
743 | * spinlock.h (acquire): Don't reschedule using __sched_yield, use | |
744 | new function __pthread_acquire to prevent deadlocks with thread | |
745 | with different priorities. | |
746 | Patches by Xavier Leroy <Xavier.Leroy@inria.fr>. | |
747 | ||
52cda958 UD |
748 | 1998-03-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
749 | ||
750 | * manager.c (__pthread_manager): Reduce first argument to select | |
751 | to include just the needed file descriptor. | |
752 | ||
48fc3dd2 UD |
753 | 1998-03-17 00:06 Ulrich Drepper <drepper@cygnus.com> |
754 | ||
755 | * manager.c: Fix last patch which caused core dumps. | |
756 | ||
757 | * pthread.c: Correctly handle missing SIGRTMIN. | |
758 | ||
f649c201 UD |
759 | 1998-03-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
760 | ||
761 | * libpthread.map: Add __libc_internal_tsd_get and | |
762 | __libc_internal_tsd_set. Add missing cancelable functions. Export | |
763 | libc internal versions of the cancelable functions. | |
764 | ||
14c44e2e UD |
765 | 1998-03-13 16:51 Ulrich Drepper <drepper@cygnus.com> |
766 | ||
767 | * weaks.c: Define pthread_attr_init as GLIBC_2.0 and GLIBC_2.1. | |
768 | ||
5d409851 UD |
769 | 1998-03-13 00:46 Ulrich Drepper <drepper@cygnus.com> |
770 | ||
771 | * attr.c: Implement pthread_attr_[gs]etguardsize, | |
772 | pthread_attr_[gs]setstackaddr, pthread_attr_[gs]etstacksize. | |
773 | Change pthread_attr_init to have two interfaces. | |
774 | * internals.h (struct _pthread_descr_struct): Add new fields for | |
775 | above functions. | |
776 | * libpthread.map: Add names in GLIBC_2.1 section. | |
777 | * manager.c (pthread_handle_create): Implement guardsize and | |
778 | user stack. | |
779 | (pthread_free): Likewise. | |
780 | * pthread.c (pthread_create): Add new interface for changed | |
781 | pthread_attr_t. | |
782 | * sysdeps/pthread/pthread.h: Add prototypes for new functions. | |
783 | * sysdeps/unix/sysv/linux/bits/local_lim.h: Add definition of | |
784 | PTHREAD_STACK_MIN. | |
785 | ||
5afdca00 UD |
786 | 1998-03-11 00:42 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> |
787 | ||
5d409851 UD |
788 | * manager.c: Enable resetting of the thread scheduling policy |
789 | to SCHED_OTHER when the parent thread has a different one. | |
5afdca00 UD |
790 | |
791 | 1998-02-01 13:51 Ulrich Drepper <drepper@cygnus.com> | |
792 | ||
793 | * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define | |
794 | _POSIX_ASYNCHRONOUS_IO. | |
795 | ||
796 | * sysdeps/pthread/pthread.h: Define bits for Unix98 variants of | |
797 | mutexes. | |
798 | * mutex.c: Implement new mutex types. | |
799 | ||
800 | * internals.h: Include <signal.h>. | |
801 | ||
802 | * libpthread.map: Add __erno_location and __h_errno_location. | |
803 | ||
804 | * errno.c: Return pointer to variable actually in use. This might | |
805 | not be the one in the thread structure. | |
806 | * internals.h (struct _pthread_descr_struct): Add new fields p_errnop | |
807 | and p_h_errnop. | |
808 | * manager.c (__pthread_manager): Set p_errnop and p_h_errnop member | |
809 | of manager thread structure. | |
810 | (pthread_handle_create): Set p_errnop and p_h_errnop members for new | |
811 | thread. | |
812 | * pthread.c: Adapt initializer for thread structures. | |
813 | (__pthread_initial_thread): Set p_errnop and p_h_errnop member. | |
814 | (__pthread_reset_main_thread): Reset p_errnop and p_h_errnop of | |
815 | current thread to global variables. | |
816 | ||
817 | 1998-01-31 17:27 Ulrich Drepper <drepper@cygnus.com> | |
818 | ||
819 | * rwlock.c: New file. | |
820 | * Makefile (libpthread-routines): Add rwlock. | |
821 | * sysdeps/pthread/pthread.h: Define data structures and declare | |
822 | functions. | |
823 | * libpthread.map: Add new functions. | |
824 | ||
825 | 1997-12-18 13:50 Philip Blundell <pb@nexus.co.uk> | |
826 | ||
827 | * sysdeps/arm/pt-machine.h: New file; add ARM support. | |
828 | * sysdeps/arm/Implies: likewise. | |
829 | * README: Document it. | |
830 | ||
831 | 1997-12-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> | |
832 | ||
833 | * signals.c: Remove unneeded initializer for sigwaited, saving a | |
834 | warning. | |
835 | ||
836 | 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> | |
837 | ||
838 | * semaphore.c (sem_init): Set sem_spinlock only if available. | |
839 | ||
840 | 1997-12-04 01:48 Ulrich Drepper <drepper@cygnus.com> | |
841 | ||
842 | * mutex.c: Implement PTHREAD_MUTEX_CHECKERROR. | |
843 | * sysdeps/pthread/pthread.h: Define PTHREAD_MUTEX_CHECKERROR. | |
844 | ||
845 | * Makefile: Update from LinuxThreads 0.7. | |
846 | * internals.h. Likewise. | |
847 | * manager.c: Likewise. | |
848 | * mutex.c: Likewise. | |
849 | * pthread.c: Likewise. | |
850 | * signals.c: Likewise. | |
851 | * specific.c: Likewise. | |
852 | * Examples/ex3.c: Likewise. | |
853 | ||
854 | 1997-11-20 18:13 Ulrich Drepper <drepper@cygnus.com> | |
855 | ||
856 | * pthread.c (__pthread_reset_main_thread): Close pipe only if still | |
857 | open. | |
858 | ||
859 | 1997-10-29 05:38 Ulrich Drepper <drepper@cygnus.com> | |
860 | ||
861 | * wrapsyscall.c: Add socket functions which are also cancelation | |
862 | points. | |
863 | ||
864 | 1997-10-19 21:40 Wolfram Gloger <wg@wolfram.dent.med.uni-muenchen.de> | |
865 | ||
866 | * specific.c (__libc_internal_tsd_set, __libc_internal_tsd_get): | |
867 | New functions for fast thread specific data within libc. | |
868 | ||
869 | * internals.h: Add new array p_libc_specific to struct | |
870 | _pthread_descr_struct. | |
871 | ||
872 | * sysdeps/pthread/bits/libc-lock.h: Declare new functions. | |
873 | ||
874 | 1997-10-13 05:39 Ulrich Drepper <drepper@cygnus.com> | |
875 | ||
876 | * semaphore.h: Add __BEGIN_DECLS/__END_DECLS. | |
877 | Reported by Ralf Corsepius <corsepiu@faw.uni-ulm.de>. | |
878 | ||
879 | 1997-08-29 03:05 Ulrich Drepper <drepper@cygnus.com> | |
880 | ||
881 | * internals.h (struct _pthread_descr_struct): Add definitions for | |
882 | two-level specific key handling. | |
883 | * manager.c (pthread_handle_create): Initialize specific memory array. | |
884 | * specific.c: Implement two-level key handling. | |
885 | * weaks.c: Don't provide dummy key handling. | |
886 | * sysdeps/pthread/bits/libc-lock.h: Typedef __libc_lock_t (no #define). | |
887 | Add definition of __libc_key_t. | |
888 | * sysdeps/unix/sysv/linux/bits/local_lim.h: Define PTHREAD_KEYS_MAX | |
889 | as 1024. | |
890 | Add definition of _POSIX_THREAD_DESTRUCTOR_ITERATIONS and | |
891 | PTHREAD_DESTRUCTOR_ITERATIONS. | |
892 | ||
893 | * manager.c (pthread_handle_create): Compare mmap result with | |
894 | MAP_FAILED. | |
895 | ||
896 | * ptfork.c: Rename to __pthread_atfork and make old name a weak alias. | |
897 | * sysdeps/pthread/bits/pthread.h: Add prototype for __pthread_atfork. | |
898 | ||
899 | 1997-08-22 19:04 Richard Henderson <rth@cygnus.com> | |
900 | ||
901 | sysdeps/sparc -> sysdeps/sparc/sparc32 | |
902 | sysdeps/sparc64 -> sysdeps/sparc/sparc64 | |
903 | ||
904 | * internals.h: Change definition of THREAD_SELF to be an expression, | |
905 | not a statement that did a return. | |
906 | * sysdeps/alpha/pt-machine.h (THREAD_SELF): Update accordingly. | |
907 | * sysdeps/sparc/sparc32/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF): | |
908 | Follow Solaris and use a "system reserved" register (%g6) to hold | |
909 | the thread descriptor. | |
910 | * sysdeps/sparc/sparc64/pt-machine.h: Likewise. | |
911 | ||
912 | 1997-08-03 00:09 Ulrich Drepper <drepper@cygnus.com> | |
913 | ||
914 | * mutex.c: Correct pthread_once. Patch by Xavier Leroy. | |
915 | * sysdeps/pthread/pthread.h: Add prototype for __pthread_once. | |
916 | * sysdeps/pthread/bits/pthread.h: Add macros for __libc_once. | |
917 | ||
918 | * semaphore.c: Include spinlock.h only when needed. | |
919 | ||
920 | * specific.c (__pthread_setsepcific, __pthread_getspecific): Reject | |
921 | keys for entries not in use. | |
922 | ||
923 | * weaks.c: Implement key handling functions for real. | |
924 | ||
925 | 1997-06-29 01:04 Richard Henderson <richard@gnu.ai.mit.edu> | |
926 | ||
927 | Initial sparc64-linux support: | |
928 | * linuxthreads/sysdeps/sparc64/Implies: New file. | |
929 | * linuxthreads/sysdeps/sparc64/pt-machine.h: Likewise. | |
930 | ||
931 | 1997-06-29 00:48 Ulrich Drepper <drepper@cygnus.com> | |
932 | ||
933 | * semaphore.c: Include spinlock.h at correct place. | |
934 | Patch by HJ Lu. | |
935 | ||
936 | 1997-06-13 10:06 Richard Henderson <rth@tamu.edu> | |
937 | ||
938 | The Great Bit File Move: | |
939 | * sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h. | |
940 | * sysdeps/powerpc/semaphorebits.h: Likewise. | |
941 | * sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise. | |
942 | * sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise. | |
943 | * sysdeps/pthread/libc-lock.h: -> bits/ | |
944 | * sysdeps/pthread/stdio-lock.h: Likewise. | |
945 | * sysdeps/unix/sysv/linux/local_lim.h: Likewise. | |
946 | * sysdeps/unix/sysv/linux/posix_opt.h: Likewise. | |
947 | * semaphore.h: Likewise. | |
948 | * sysdeps/pthread/pthread.h: Likewise. | |
949 | ||
950 | * lockfile.c: <foo.h> -> <bits/foo.h>. | |
951 | * semaphore.h: Likewise. | |
952 | ||
953 | * Makefile: (headers): foo.h -> bits/foo.h. | |
954 | * sysdeps/pthread/Makefile: Likewise. | |
955 | ||
956 | 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> | |
957 | ||
958 | * semaphore.c (sem_init): Set sem_spinlock only if available. | |
959 | ||
960 | * sysdeps/m68k/pt-machine.h (testandset, __compare_and_swap): Fix | |
961 | asm constraints. | |
962 | ||
963 | 1997-04-09 03:00 Ulrich Drepper <drepper@cygnus.com> | |
964 | ||
965 | Update from LinuxThreads 0.6. | |
966 | ||
967 | * attr.c (pthread_attr_getdetachstate): Use __sched_get_priority_max | |
968 | and __sched_get_priority_min instead of names without `__'. | |
969 | ||
970 | * manager.c: Rewrite large parts to implement opaque pthread_t. | |
971 | ||
972 | * cancel.c: Adapt for opaque pthread_t type. | |
973 | * condvar.c: Likewise. | |
974 | * errno.c: Likewise. | |
975 | * join.c: Likewise. | |
976 | * mutex.c: Likewise. | |
977 | * pthread.c: Likewise. | |
978 | * signals.c: Likewise. | |
979 | * specific.c: Likewise. | |
980 | * restart.h: Likewise. | |
981 | * queue.h: Likewise. | |
982 | * Examples/ex3.c: Likewise. | |
983 | * Examples/ex4.c: Likewise. | |
984 | * sysdeps/pthread/pthread.h: Likewise. | |
985 | ||
986 | * pthread.c: Accumulate time for all threads in thread manager. | |
987 | ||
988 | * semaphore.c: Implement fallback implementation for architectures | |
989 | sometimes missing compare-exchange operations. | |
990 | ||
991 | * cancel.c (pthread_cancel): Validate handle argument. | |
992 | * join.c (pthread_join): Likewise. | |
993 | (pthread_detach): Likewise. | |
994 | * signals.c (pthread_kill): Likewise. | |
995 | ||
996 | * spinlock.h (acquire): Use __sched_yield not sched_yield. | |
997 | ||
998 | * queue.h (enqueue): Enqueue thread according to priority. | |
999 | ||
1000 | * internals.c (struct pthread_start_args): New struct for passing | |
1001 | args to cloning function. | |
1002 | (struct _pthread): Rename to _pthread_descr_struct and adapt for | |
1003 | opaque pthread_t. | |
1004 | ||
1005 | * Examples/Makefile (clean): Pass -f option to rm. | |
1006 | ||
1007 | * sysdeps/i386/pt-machine.h: Add check for compare-exchange instruction | |
1008 | and define TEST_FOR_COMPARE_AND_SWAP. | |
1009 | * sysdeps/i386/i486/pt-machine.h: Removed. | |
1010 | ||
1011 | * sysdeps/unix/sysv/linux/local_lim.h (PTHREAD_THREADS_MAX): Increase | |
1012 | to 1024. | |
1013 | ||
1014 | 1997-04-04 16:38 Ulrich Drepper <drepper@cygnus.com> | |
1015 | ||
1016 | * restart.h (suspend): Clear p_signal before suspending. | |
1017 | (suspend_with_cancellation): Likewise. | |
1018 | Patch by Xavier Leroy <Xavier.Leroy@inria.fr>. | |
1019 | ||
1020 | * weaks.c: Make __pthread_key_create return 1. | |
1021 | * sysdeps/pthread/libc-lock.h: Define __libc_key_create, | |
1022 | __libc_getspecific, __libc_setspecific, and __libc_key_t. | |
1023 | * sysdeps/pthread/stdio-lock.h: Don't care for implementation not | |
1024 | using libio. | |
1025 | ||
1026 | 1997-03-19 15:13 Miguel de Icaza <miguel@nuclecu.unam.mx> | |
1027 | ||
1028 | * sysdeps/sparc/pt-machine (RELEASE): Fix. | |
1029 | ||
1030 | 1997-03-01 07:55 Geoff Keating <geoffk@ozemail.com.au> | |
1031 | ||
1032 | * sysdeps/powerpc/Implies: Added. | |
1033 | * sysdeps/powerpc/pt-machine.h: Added. | |
1034 | * sysdeps/powerpc/semaphorebits.h: Added. | |
1035 | ||
1036 | 1997-01-22 01:22 Ulrich Drepper <drepper@cygnus.com> | |
1037 | ||
1038 | * linuxtheads/pthread.c (__pthread_initial_thread): Correct | |
1039 | initializer. | |
1040 | (__pthread_manager_thread): Likewise. | |
1041 | Reported by Andreas Jaeger. | |
1042 | ||
1043 | 1997-01-18 22:15 Richard Henderson <rth@tamu.edu> | |
1044 | ||
1045 | Since sigset_t no longer fits in a register, we can't pass in the | |
1046 | thread's initial mask so easily. Take this opportunity to simplify | |
1047 | the clone implementation by only accepting a single void* argument. | |
1048 | ||
1049 | * linuxthreads/manager.c (__pthread_manager): Put thread vitals | |
1050 | in the thread struct instead of as arguments through clone. | |
1051 | (pthread_start_thread): Look for them there. | |
1052 | * linuxthreads/internals.h (struct _pthread): Add p_initial_fn, | |
1053 | p_initial_fn_arg, p_initial_mask. Fix __pthread_manager proto. | |
1054 | * linuxthreads/pthread.c (pthread_initialize_manager): Revise | |
1055 | clone invocation. |