OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [uClibc/] [libpthread/] [linuxthreads/] [ChangeLog] - Blame information for rev 1771

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1325 phoenix
2000-02-22  Ulrich Drepper  
2
 
3
        * semaphore.h (SEM_FAILED): Use 0 not NULL.
4
 
5
2000-02-14  Ulrich Drepper  
6
 
7
        * condvar.c (pthread_cond_timedwait_relative_old): Tight loop with
8
        nanosleep does not work either.  Get absolute time inside the
9
        loop.
10
        (pthread_cond_timedwait_relative_new): Likewise.
11
        Patch by Kaz Kylheku .
12
 
13
2000-02-13  Ulrich Drepper  
14
 
15
        * condvar.c (pthread_cond_timedwait_relative_old): Undo last patch
16
        but keep the code around.  A bug in the kernel prevent us from
17
        using the code.
18
        (pthread_cond_timedwait_relative_new): Likewise.
19
        (PR libc/1597 and libc/1598).
20
 
21
2000-02-01  Kaz Kylheku  
22
 
23
        * condvar.c (pthread_cond_timedwait_relative_old): Do tight
24
        loop around nanosleep calls instead of around most of the function
25
        (pthread_cond_timedwait_relative_new): Likewise.
26
        body.  Got rid of backwards goto and one local.
27
 
28
2000-01-31  Ulrich Drepper  
29
 
30
        * condvar.c (pthread_cond_timedwait_relative_old): Recompute time
31
        before every nanosleep call to account for time spent in the rest
32
        of the function.
33
        (pthread_cond_timedwait_relative_new): Likewise.
34
        Patch by khendricks@ivey.uwo.ca (PR libc/1564).
35
 
36
2000-01-29  Ulrich Drepper  
37
 
38
        * condvar.c (pthread_cond_timedwait_relative_old): Get remaining time
39
        from nanosleep call so that in case we restart we only wait for the
40
        remaining time.
41
        (pthread_cond_timedwait_relative_new): Likewise.
42
        Patch by khendricks@ivey.uwo.ca (PR libc/1561).
43
 
44
2000-01-18  Ulrich Drepper  
45
 
46
        * manager.c (pthread_allocate_stack): Compute guard page address
47
        correctly.  Patch by HJ Lu.
48
 
49
2000-01-12  Ulrich Drepper  
50
 
51
        * internals.h (pthread_readlock_info): New structure.
52
        (_pthread_descr_struct): Add p_readlock_list, p_readlock_free, and
53
        p_untracked_readlock_count.
54
        * pthread.c (__pthread_initial_thread, pthread_manager_thread):
55
        Add initializers for new fields.
56
        * manager.c (pthread_free): Free read/write lock lists.
57
        * queue.h (queue_is_empty): New function.
58
        * rwlock.c: Implement requirements about when readers should get
59
        locks assigned.
60
        * sysdeps/pthread/pthread.h
61
        (PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP): New definition.
62
        * sysdeps/pthread/bits/pthreadtypes.h (struct _pthread_rwlock_t):
63
        Define this name as well.
64
        Patches by Kaz Kylheku .
65
 
66
2000-01-06  Andreas Jaeger  
67
 
68
        * pthread.c: Remove extra initializer.
69
 
70
2000-01-05  Ulrich Drepper  
71
 
72
        * pthread.c (__pthread_initial_thread, pthread_manager_thread):
73
        Adjust initializers for struct _pthread_descr_struct change.
74
        * internals.h (struct _pthread_descr_struct): Move new elements to
75
        the end.
76
 
77
2000-01-03  Kaz Kylheku  
78
 
79
        Redesigned how cancellation unblocks a thread from internal
80
        cancellation points (sem_wait, pthread_join,
81
        pthread_cond_{wait,timedwait}).
82
        Cancellation won't eat a signal in any of these functions
83
        (*required* by POSIX and Single Unix Spec!).
84
        * condvar.c: Spontaneous wakeup on pthread_cond_timedwait won't eat a
85
        simultaneous condition variable signal (not required by POSIX
86
        or Single Unix Spec, but nice).
87
        * spinlock.c: __pthread_lock queues back any received restarts
88
        that don't belong to it instead of assuming ownership of lock
89
        upon any restart; fastlock can no longer be acquired by two threads
90
        simultaneously.
91
        * restart.h: Restarts queue even on kernels that don't have
92
        queued real time signals (2.0, early 2.1), thanks to atomic counter,
93
        avoiding a rare race condition in pthread_cond_timedwait.
94
 
95
1999-12-28  Ulrich Drepper  
96
 
97
        * sysdeps/alpha/pt-machine.h:  Move stack_pointer definition to the
98
        beginning.
99
 
100
        * manager.c (__pthread_start): Add one more cast to assignment of
101
        arg to prevent warning on 64bit machines.
102
 
103
1999-12-21  Ulrich Drepper  
104
 
105
        * manager.c (pthread_handle_create): Set p_pid of new thread
106
        before calling the callback function to report a new thread.
107
 
108
1999-12-20  Andreas Jaeger  
109
 
110
        * pthread.c (pthread_initialize): Move getrlimit call after
111
        setting of errno.
112
 
113
1999-12-01  Ulrich Drepper  
114
 
115
        * sysdeps/i386/pt-machine.h: Move stack_pointer definition to the
116
        beginning.
117
        * sysdeps/i386/i686/pt-machine.h: Likewise.
118
        Patches by Alan Modra .
119
 
120
1999-11-23  Ulrich Drepper  
121
 
122
        * manager.c (pthread_start_thread_event): Initialize p_pid already
123
        here.
124
 
125
1999-11-22  Ulrich Drepper  
126
 
127
        * internals.h: Add prototype for __pthread_manager_event.
128
        * manager.c (__pthread_manager_event): New function.
129
        (pthread_start_thread_event): Correct computation of self.
130
        Use INIT_THREAD_SELF.
131
        * pthread.c (__pthread_manager_thread): Initialize p_lock.
132
        (__pthread_initialize_manager): Respect event flags also for creation
133
        of the manager thread.
134
 
135
1999-11-08  Ulrich Drepper  
136
 
137
        * pthread.c (__pthread_initialize_manager): Initialize
138
        __pthread_manager_thread.p_tid.
139
 
140
1999-11-02  Ulrich Drepper  
141
 
142
        * internals.h: Declare __pthread_last_event.
143
        * manager.c: Define __pthread_last_event.
144
        (pthread_handle_create): Set __pthread_last_event.
145
        (pthread_exited): Likewise.
146
        * join.c (pthread_exit): Likewise.
147
 
148
        * Makefile (libpthread-routines): Add events.
149
        * events.c: New file.
150
        * internals.h: Protect against multiple inclusion.
151
        Include thread_dbP.h header.
152
        (struct _pthread_descr_struct): Add new fields p_report_events and
153
        p_eventbuf.
154
        Declare event reporting functions.
155
        * join.c (pthread_exit): Signal event if this is wanted.
156
        * manager.c (__pthread_threads_events): New variable.
157
        (pthread_handle_create): Take new parameters with event information.
158
        Signal TD_CREATE event if wanted.
159
        (__pthread_manager): Adjust pthread_handle_create call.
160
        (pthread_start_thread_event): New function.  Block until manager is
161
        finished and then call pthread_start_thread.
162
        (pthread_exited): Signal TD_REAP event if wanted.
163
 
164
1999-10-26  Ulrich Drepper  
165
 
166
        * restart.h (suspend_with_cancellation): Rewrite as a macro.
167
 
168
        * condvar.c (pthread_cond_timedwait_relative): Don't mark as inline.
169
 
170
1999-10-21  Xavier Leroy  
171
 
172
        * linuxthreads/pthread.c: For i386, wrap pthread_handle_sigrestart
173
        and pthread_handle_sigcancel with functions that restore
174
        %gs from the signal context.  For each signal handling function,
175
        two wrappers are required, one for a non-RT signal and one for
176
        a RT signal.
177
        * linuxthreads/signal.c: For i386, add code to restore %gs
178
        from the signal context in pthread_sighandler and
179
        pthread_sighandler_rt.
180
 
181
1999-10-09  Andreas Jaeger  
182
 
183
        * internals.h: Add __new_sem_post to get prototype in
184
        manager.c; include semaphore.h for needed types.
185
 
186
1999-10-08  Ulrich Drepper  
187
 
188
        * manager.c (__pthread_manager) [REQ_POST]: Use __new_sem_post
189
        directly instead of calling sem_post which should not be necessary
190
        but is faster and might help in some case to work around problems.
191
 
192
1999-09-25  Ulrich Drepper  
193
 
194
        * condvar.c (pthread_cond_timedwait_relative): Never return with
195
        EINTR.  Patch by Andreas Schwab.
196
 
197
1999-09-19  Ulrich Drepper  
198
 
199
        * signals.c (sigaction): Correct last patch.  Don't select
200
        pthread_sighandler_rt based on the signal number but instead of
201
        the SA_SIGINFO flag.
202
 
203
1999-09-23  Ulrich Drepper  
204
 
205
        * specific.c: Move definitions of struct pthread_key_struct and
206
        destr_function to ...
207
        * internals.h: ...here.
208
 
209
1999-09-03  Andreas Schwab  
210
 
211
        * ptfork.c (__fork): Renamed from fork and use __libc_fork.  Add
212
        fork as weak alias.
213
        (__vfork): New function, alias vfork.
214
        * Versions: Export __fork, vfork, and __vfork in libpthread.
215
 
216
1999-08-23  Andreas Schwab  
217
 
218
        * signals.c (pthread_sighandler): Add SIGCONTEXT_EXTRA_ARGS to
219
        call to signal handler.
220
 
221
1999-08-20  Ulrich Drepper  
222
 
223
        * pthread.c (__pthread_reset_main_thread): Undo last change.
224
        (__pthread_kill_other_threads_np): Reset signal handlers for the
225
        signals we used in the thread implementation here.
226
 
227
1999-08-19  Ulrich Drepper  
228
 
229
        * pthread.c (__pthread_reset_main_thread): Reset signal handlers
230
        for the signals we used in the thread implementation [PR libc/1234].
231
 
232
        * Versions: Export __pthread_kill_other_threads_np from libpthread
233
        for GLIBC_2.1.2.
234
 
235
        * signals.c: Pass sigcontext through wrapper to the user function.
236
 
237
1999-08-01  Ulrich Drepper  
238
 
239
        * Versions [ld.so] (GLIBC_2.0): Export __libc_internal_tsd_get and
240
        __libc_internal_tsd_set.
241
 
242
1999-07-29  Andreas Jaeger  
243
 
244
        * manager.c: Remove inclusion of  since it's not
245
        needed anymore.
246
 
247
1999-07-16  Andreas Jaeger  
248
 
249
        * internals.h: Align _pthread_descr_struct to 32 bytes.
250
        Reported by Tim Hockin , close PR libc/1206.
251
 
252
1999-07-09  Ulrich Drepper  
253
 
254
        * manager.c (pthread_handle_create): Free mmap region after stack
255
        if clone failed.  Patch by Kaz Kylheku .
256
 
257
1999-07-09  Cristian Gafton  
258
 
259
        * Makefile (libpthread-routines): Add oldsemaphore routine.
260
        * Versions: Add sem_destroy, sem_getvalue, sem_init, sem_post,
261
        sem_trywait, and sem_wait to GLIBC_2.1.
262
        * oldsemaphore.c: New file.
263
        * semaphore.c: Add default_symbol_versions for the changed functions.
264
        (__new_sem_init): Rename from sem_init.
265
        (__new_sem_post): Rename from sem_post.
266
        (__new_sem_wait): Rename from sem_wait.
267
        (__new_sem_trywait): Rename from sem_trywait.
268
        (__new_sem_getvalue): Rename from sem_getvalue.
269
        (__new_sem_destroy): Rename from sem_destroy.
270
 
271
1999-06-23  Robey Pointer  
272
 
273
        * internals.h: Added p_nextlock entry to separate queueing for a
274
        lock from queueing for a CV (sometimes a thread queues on a lock
275
        to serialize removing itself from a CV queue).
276
        * pthread.c: Added p_nextlock to initializers.
277
        * spinlock.c: Changed to use p_nextlock instead of p_nextwaiting.
278
 
279
1999-05-23  Andreas Jaeger  
280
 
281
        * man/pthread_cond_init.man: Correct example.
282
        Reported by Tomas Berndtsson .
283
 
284
        * linuxthreads.texi (Condition Variables): Likewise.
285
 
286
1999-05-18  Jakub Jelinek  
287
 
288
        * sysdeps/sparc/sparc64/pt-machine.h (__compare_and_swap): Use
289
        casx not cas, also successful casx returns the old value in rd
290
        and not the new value.
291
 
292
1999-05-16  Xavier Leroy  
293
 
294
        * manager.c: If pthread_create() is given a NULL attribute
295
        and the thread manager runs with a realtime policy, set the
296
        scheduling policy of the newly created thread back to SCHED_OTHER.
297
        * manager.c: If the PTHREAD_INHERIT_SCHED attribute is given,
298
        initialize the schedpolicy field of new_thread->p_start_args
299
        to that of the calling thread.
300
 
301
1999-04-29  Ulrich Drepper  
302
 
303
        * sysdeps/sparc/sparc64/pt-machine.h (__compare_and_swap): cas
304
        instruction does not allow memory element to use offset.
305
 
306
1999-04-28  Ulrich Drepper  
307
 
308
        * manager.c (pthread_allocate_stack): Optimize initialization of new
309
        thread descriptor.
310
 
311
        * sysdeps/pthread/bits/libc-lock.h (__libc_lock_define_initialized):
312
        Don't use initializer since it is all zeroes.
313
        (__libc_once_define): Likewise.
314
 
315
1999-04-16  Andreas Jaeger  
316
 
317
        * sysdeps/arm/Implies: Removed since cmpxchg/no-cmpxchg
318
        doesn't exist anymore.
319
        * sysdeps/i386/Implies: Likewise.
320
        * sysdeps/m68k/Implies: Likewise.
321
        * sysdeps/mips/Implies: Likewise.
322
        * sysdeps/powerpc/Implies: Likewise.
323
        * sysdeps/sparc/sparc32/Implies: Likewise.
324
        * sysdeps/sparc/sparc64/Implies: Likewise.
325
 
326
1999-04-15  Ulrich Drepper  
327
 
328
        * sysdeps/alpha/bits/semaphore.h: Removed.
329
        * sysdeps/powerpc/bits/semaphore.h: Removed.
330
        * sysdeps/pthread/cmpxchg/bits/semaphore.h: Removed.
331
        * sysdeps/pthread/no-cmpxchg/bits/semaphore.h: Removed.
332
        * Makefile (headers): Remove bits/semaphore.h.
333
 
334
        * semaphore.h: Define _pthread_descr if necessary.
335
        Don't include limits.h.  Define SEM_VALUE_MAX directly.
336
        Define SEM_FAILED.
337
        (sem_t): Protect element names with leading __.
338
        Add declarations for sem_close, sem_open, and sem_unlink.
339
        * semaphore.c: Adjust all functions for new element names.
340
        Define sem_close, sem_open, and sem_unlink.
341
        * Versions (libthread): Add sem_close, sem_open, and sem_unlink for
342
        GLIBC_2.1.1.
343
        * sysdeps/pthread/bits/pthreadtypes.h: Define _pthread_descr only if
344
        necessary.
345
 
346
1999-03-16  H.J. Lu  
347
 
348
        * specific.c (pthread_key_delete): Check th->p_terminated to see
349
        if the thread is running.
350
 
351
        * Versions (__libc_internal_tsd_get, __libc_internal_tsd_set):
352
        Added to GLIBC_2.0 for libc.so.
353
 
354
1999-02-12  H.J. Lu  
355
 
356
        * Versions (__libc_current_sigrtmin, __libc_current_sigrtmax,
357
        __libc_allocate_rtsig): Added to GLIBC_2.1.
358
 
359
        * internals.h (DEFAULT_SIG_RESTART): Removed.
360
        (DEFAULT_SIG_CANCEL): Removed.
361
 
362
        * pthread.c (init_rtsigs, __libc_current_sigrtmin,
363
        __libc_current_sigrtmax, __libc_allocate_rtsig): New functions.
364
        (__pthread_sig_restart, __pthread_sig_cancel,
365
        __pthread_sig_debug): Initialized.
366
        (pthread_initialize): Call init_rtsigs () to initialize
367
        real-time signals.
368
 
369
1999-02-03  H.J. Lu  
370
 
371
        * manager.c (__pthread_manager): Do block __pthread_sig_debug.
372
        Don't restart the thread which sent REQ_DEBUG.
373
        (pthread_start_thread): Check if __pthread_sig_debug > 0
374
        before debugging.
375
 
376
        * pthread.c (__pthread_initialize_manager): Suspend ourself
377
        after sending __pthread_sig_debug to gdb instead of
378
        __pthread_sig_cancel.
379
 
380
1999-01-24  H.J. Lu  
381
 
382
        * manager.c (__pthread_manager): Delete __pthread_sig_debug
383
        from mask if __pthread_sig_debug > 0.
384
        (pthread_handle_create): Increment __pthread_handles_num.
385
 
386
        * manager.c (pthread_handle_create): Don't pass CLONE_PTRACE to clone.
387
        * pthread.c (__pthread_initialize_manager): Likewise.
388
 
389
        * pthread.c (pthread_initialize): Use __libc_allocate_rtsig (1)
390
        instead of __libc_allocate_rtsig (2).
391
        (__pthread_initialize_manager): Send __pthread_sig_debug to gdb
392
        instead of __pthread_sig_cancel.
393
        (pthread_handle_sigdebug): Fix comments.
394
 
395
1999-01-21  Ulrich Drepper  
396
 
397
        * manager.c (pthread_allocate_stack): Set
398
        __pthread_nonstandard_stacks if user-specified stack is used.
399
 
400
1999-01-16  Ulrich Drepper  
401
 
402
        * sysdeps/unix/sysv/linux/bits/posix_opt.h: Add _LFS_ASYNCHRONOUS_IO,
403
        _LFS_LARGEFILE, _LFS64_LARGEFILE, and _LFS64_STDIO from Unix98.
404
 
405
1999-01-07  Xavier Leroy  
406
 
407
        * pthread.c: Use a third signal __pthread_sig_debug distinct
408
        from __pthread_sig_cancel to notify gdb when a thread is
409
        created
410
        * manager.c: Likewise.
411
        * internals.h: Likewise.
412
        * signals.c: The implementation of sigwait(s) assumed that
413
        all signals in s have signal handlers already attached.
414
        This is not required by the standard, so make it work
415
        also if some of the signals have no handlers.
416
 
417
1999-01-05  Andreas Schwab  
418
 
419
        * linuxthreads.texi: Remove pointers from first @node.  Move old
420
        @node spec inside comment.
421
 
422
1998-12-31  Ulrich Drepper  
423
 
424
        * sysdeps/pthread/bits/stdio-lock.h: Define _IO_lock_lock and
425
        _IO_lock_unlock.
426
 
427
1998-12-29  Ulrich Drepper  
428
 
429
        * semaphore.c (sem_trywait): Don't forget to unlock the semaphore
430
        lock.  Patch by Bernd Schmidt .
431
 
432
1998-12-21  Ulrich Drepper  
433
 
434
        * manager.c: Threads now send __pthread_sig_cancel on termination.
435
        Change clone call and signal masks.
436
        * thread.c (pthread_handle_sigrestart): Remove special code for
437
        manager.
438
        (pthread_handle_sigcancel): In manager thread call
439
        __pthread_manager_sighandler.
440
        * sysdeps/i386/pt-machine.h (__compare_and_swap): Add memory clobber.
441
        * sysdeps/i386/i686/pt-machine.h: Likewise.
442
        Patches by Xavier Leroy.
443
 
444
1998-12-14  Ulrich Drepper  
445
 
446
        * spinlock.c (__pthread_unlock): Don't crash if called for an
447
        untaken mutex.  Reported by Ruslan V. Brushkoff .
448
 
449
        * Examples/ex6.c: Unbuffer stdout and reduce sleep time to reduce
450
        overall runtime.
451
 
452
1998-12-13  Ulrich Drepper  
453
 
454
        * Examples/ex3.c: Wait until all threads are started before
455
        searching for the number to avoid race condition on very fast
456
        systems.
457
 
458
1998-12-08  Andreas Jaeger  
459
 
460
        * sysdeps/pthread/pthread.h: Remove __pthread_setcanceltype
461
        declaration since it's not needed.
462
 
463
        * sysdeps/pthread/pthread.h: Move internal functions to ...
464
        * internals.h: ...here.
465
 
466
1998-12-02  H.J. Lu  
467
 
468
        * pthread.c (__pthread_sig_restart): Initiliaze to 0 if
469
        SIGRTMIN is defined.
470
        (__pthread_sig_cancel): Likewise.
471
 
472
1998-12-01  Andreas Jaeger  
473
 
474
        * wrapsyscall.c: Include  for msync,
475
         for system and  for tcdrain prototype.
476
        Correct msync declaration.
477
 
478
1998-11-29  Roland McGrath  
479
 
480
        * sysdeps/pthread/bits/libc-tsd.h (__libc_tsd_define, __libc_tsd_get,
481
        __libc_tsd_set): New macros for new interface.
482
        * no-tsd.c: New file, provide uninitialized defns of
483
        __libc_internal_tsd_get and __libc_internal_tsd_set.
484
        * Makefile (routines): Add no-tsd.
485
 
486
1998-10-12  Roland McGrath  
487
 
488
        * internals.h: Include , not .
489
        * sysdeps/pthread/bits/libc-lock.h (__libc_internal_tsd_get,
490
        __libc_internal_tsd_set): Move decls to ...
491
        * sysdeps/pthread/bits/libc-tsd.h: New file for __libc_internal_tsd_*
492
        declarations.
493
 
494
        * sysdeps/pthread/bits/libc-lock.h (__libc_internal_tsd_get,
495
        __libc_internal_tsd_set): Make these pointers to functions, not
496
        functions; remove #pragma weak decls for them.
497
        * specific.c (__libc_internal_tsd_get, __libc_internal_tsd_set):
498
        Define static functions and initialized pointers to them.
499
 
500
1998-11-18  Ulrich Drepper  
501
 
502
        * Makefile (CFLAGS-mutex.c): Define as -D__NO_WEAK_PTHREAD_ALIASES.
503
        (CFLAGS-specific.c): Likewise.
504
        (CFLAGS-pthread.c): Likewise.
505
        (CFLAGS-ptfork.c): Likewise.
506
        (CFLAGS-cancel.c): Likewise.
507
        * sysdeps/pthread/bits/libc-lock.h: Don't mark __pthread_* functions
508
        as weak references if __NO_WEAK_PTHREAD_ALIASES is defined.
509
 
510
        * mutex.c (pthread_mutex_init): Define as strong symbol.
511
        (pthread_mutex_destroy): Likewise.
512
        (pthread_mutex_trylock): Likewise.
513
        (pthread_mutex_lock): Likewise.
514
        (pthread_mutex_unlock): Likewise.
515
        (pthread_mutexattr_init): Likewise.
516
        (pthread_mutexattr_destroy): Likewise.
517
        (pthread_once): Likewise.
518
        * ptfork.c (pthread_atfork): Likewise.
519
        * specific.c (pthread_key_create): Likewise.
520
        (pthread_setspecific): Likewise.
521
        (pthread_getspecific): Likewise.
522
 
523
1998-11-15  Andreas Schwab  
524
 
525
        * linuxthreads.texi: Fix punctuation after xref.
526
 
527
1998-11-10  H.J. Lu  
528
 
529
        * sysdeps/unix/sysv/linux/bits/local_lim.h: Undefine NR_OPEN
530
        if it is defined in .
531
 
532
1998-10-29 14:28  Ulrich Drepper  
533
 
534
        * spinlock.h (__pthread_trylock): Define inline.
535
        (__pthread_lock): Add extra parameter to declaration.  Declare
536
        using internal_function.
537
        (__pthread_unlock): Declare using internal_function.
538
        * spinlock.c (__pthread_lock): Add new parameter.  Use it instead
539
        of local variable self.  Avoid recomputing self.  Define using
540
        internal_function.
541
        (__pthread_trylock): Remove.
542
        (__pthread_unlock): Define using internal_function.
543
        * cancel.c: Adjust for __pthread_lock interface change.  Use already
544
        computed self value is possible.
545
        * condvar.c: Likewise.
546
        * join.c: Likewise.
547
        * manager.c: Likewise.
548
        * mutex.c: Likewise.
549
        * pthread.c: Likewise.
550
        * rwlock.c: Likewise.
551
        * semaphore.c: Likewise.
552
        * signals.c: Likewise.
553
 
554
1998-10-27 13:46  Ulrich Drepper  
555
 
556
        * sysdeps/pthread/pthread.h (struct _pthread_cleanup_buffer): Prepend
557
        __ to field names of the struct.
558
        * sysdeps/pthread/bits/pthreadtypes.h (struct _pthread_fastlock):
559
        Likewise.
560
        (pthread_attr_t): Likewise.
561
        (pthread_cond_t): Likewise.
562
        (pthread_condattr_t): Likewise.
563
        (pthread_mutex_t): Likewise.
564
        (pthread_mutexattr_t): Likewise.
565
        (pthread_rwlock_t): Likewise.
566
        (pthread_rwlockattr_t): Likewise.
567
        * attr.c: Adjust for pthread.h and pthreadtypes.h change.
568
        * cancel.c: Likewise.
569
        * condvar.c: Likewise.
570
        * manager.c: Likewise.
571
        * mutex.c: Likewise.
572
        * pthread.c: Likewise.
573
        * ptlongjmp.c: Likewise.
574
        * rwlock.c: Likewise.
575
        * spinlock.c: Likewise.
576
 
577
1998-10-09  Ulrich Drepper  
578
 
579
        * sysdeps/i386/pt-machine.h (get_eflags, set_eflags): Mark these
580
        also with PT_EI.
581
 
582
        * sysdeps/i386/i686/pt-machine.h: Remove unused inline
583
        definitions.
584
 
585
        * Makefile (libpthread-routines): Add pt-machine.
586
        * pt-machine.c: New file.
587
        * sysdeps/alpha/pt-machine.h: Define PT_EI as extern inline is not
588
        yet defined.  Use PT_EI in extern inline definitions.
589
        * sysdeps/arm/pt-machine.h: Likewise.
590
        * sysdeps/i386/pt-machine.h: Likewise.
591
        * sysdeps/i386/i686/pt-machine.h: Likewise.
592
        * sysdeps/m68k/pt-machine.h: Likewise.
593
        * sysdeps/mips/pt-machine.h: Likewise.
594
        * sysdeps/powerpc/pt-machine.h: Likewise.
595
        * sysdeps/sparc/sparc32/pt-machine.h: Likewise.
596
        * sysdeps/sparc/sparc64/pt-machine.h: Likewise.
597
 
598
1998-10-02  Andreas Jaeger  
599
 
600
        * semaphore.h: Include  so that _pthread_descr
601
        is declared.
602
 
603
1998-09-15  David S. Miller  
604
 
605
        * sysdeps/sparc/sparc32/pt-machine.h (INIT_THREAD_SELF): Add nr
606
        argument.
607
        * sysdeps/sparc/sparc64/pt-machine.h (INIT_THREAD_SELF): Likewise.
608
 
609
1998-09-12 14:24 -0400  Zack Weinberg  
610
 
611
        * linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h: Add
612
        multiple inclusion guard.
613
 
614
1998-09-02 11:08  Andreas Schwab  
615
 
616
        * signals.c (sigaction): Check that sig is less than NSIG to avoid
617
        array index overflow.
618
 
619
1998-09-06 10:56  Ulrich Drepper  
620
 
621
        * sysdeps/pthread/semaphore.h: New file.
622
 
623
1998-09-06 09:08  Ulrich Drepper  
624
 
625
        * sysdeps/pthread/bits/libc-lock.h (enum __libc_tsd_key_t): Add
626
        _LIBC_TSD_KEY_DL_ERROR.
627
 
628
1998-08-31  Ulrich Drepper  
629
 
630
        * sysdeps/i386/i686/pt-machine.h (testandset): Add memory clobber.
631
        * sysdeps/i386/pt-machine.h: Likewise.
632
        Suggested by Roland McGrath.
633
 
634
1998-08-28 13:58  Ulrich Drepper  
635
 
636
        * internals.h: Also define THREAD_GETMEM_NC and THREAD_SETMEM_NC to
637
        access thread data with non-constant offsets.
638
        * specific.c: Use THREAD_GETMEM_NC and THREAD_SETMEM_NC where
639
        necessary.
640
 
641
        * sysdeps/i386/useldt.h: Fix typo.  Add THREAD_GETMEM_NC and
642
        THREAD_SETMEM_NC definitions.
643
 
644
        * sysdeps/sparc/sparc32/pt-machine.h: Define THREAD_GETMEM_NC and
645
        THREAD_SETMEM_NC.
646
        * sysdeps/sparc/sparc64/pt-machine.h: Likewise.
647
 
648
1998-08-26 15:46  Ulrich Drepper  
649
 
650
        * internals.h: Define THREAD_GETMEM and THREAD_SETMEM to default if
651
        not already defined.
652
        (struct _pthread_descr_struct): Add p_self and p_nr field.
653
        * manager.c (__pthread_handles): Define second element to point
654
        to manager thread.
655
        (__pthread_handles_num): Initialize to 2.
656
        (__pthread_manager): Use INIT_THREAD_SELF with two arguments.
657
        (pthread_start_thread): Likewise.
658
        (pthread_handle_create): Start search for free slot at entry 2.
659
        Initialize new fields p_self and p_nr.
660
        Call __clone with CLONE_PTRACE if available.
661
        (pthread_free): Call FREE_THREAD_SELF if available.
662
        * pthread.c (__pthread_initial_thread): Initialize new fields.
663
        (__pthread_manager_thread): Likewise.
664
        (__pthread_initialize_manager): Call __clone with CLONE_PTRACE.
665
 
666
        * cancel.c: Use THREAD_GETMEM and THREAD_SETMEM to access the
667
        elements of the thread descriptor.
668
        * condvar.c: Likewise.
669
        * errno.c: Likewise.
670
        * join.c: Likewise.
671
        * manager.c: Likewise.
672
        * pthread.c: Likewise.
673
        * ptlongjmp.c: Likewise.
674
        * semaphore.c: Likewise.
675
        * signals.c: Likewise.
676
        * specific.c: Likewise.
677
        * spinlock.c: Likewise.
678
 
679
        * sysdeps/alpha/pt-machine.h (INIT_THREAD_SELF): Add extra parameter.
680
 
681
        * sysdeps/i386/useldt.h: New file.
682
        * sysdeps/i386/i686/pt-machine.h: Show how to use this file.
683
 
684
        * sysdeps/sparc/sparc32/pt-machine.h: Define THREAD_GETMEM and
685
        THREAD_SETMEM using __thread_self.
686
        * sysdeps/sparc/sparc64/pt-machine.h: Likewise.
687
 
688
1998-08-24  Geoff Keating  
689
 
690
        * spinlock.c (__pthread_lock): Reset p_nextwaiting to NULL if it
691
        turned out that we didn't need to queue after all.
692
 
693
1998-08-22  Geoff Keating  
694
 
695
        * sysdeps/powerpc/pt-machine.h: Remove testandset, it's not used
696
        and wastes space; correct types.
697
 
698
1998-08-08 11:18  H.J. Lu  
699
 
700
        * signals.c (sigaction): Handle NULL argument.
701
 
702
1998-08-04  Ulrich Drepper  
703
 
704
        * sysdeps/unix/sysv/linux/bits/sigthread.h: Use __sigset_t instead
705
        of sigset_t.
706
 
707
1998-08-02  Andreas Schwab  
708
 
709
        * Makefile (linuxthreads-version): Extract correct number from
710
        Banner.
711
 
712
1998-07-29  Xavier Leroy  
713
 
714
        * Banner: Bump version number to 0.8
715
        * FAQ.html: Many updates, in particular w.r.t. debugging.
716
        * manager.c: Support for non-default stacksize for
717
        LinuxThreads-allocated stacks;
718
        don't use guard pages for stacks with default size, rely on
719
        rlimit(RLIMIT_STACK) instead (it's cheaper).
720
        * attr.c: Likewise.
721
        * cancel.c: Use __pthread_sig_cancel and __pthread_sig_restart
722
        everywhere instead of PTHREAD_SIG_CANCEL and PTHREAD_SIG_RESTART.
723
        * condvar.c: Likewise.
724
        * internals.h: Likewise.
725
        * restart.h: Likewise.
726
        * signals.c: Likewise.
727
        * pthread.c: Likewise; set rlimit(RLIMIT_STACK) as we need it.
728
 
729
1998-07-23  Andreas Schwab  
730
 
731
        * weaks.c: Define pthread_mutexattr_[sg]ettype instead of
732
        __pthread_mutexattr_[sg]ettype.  Add more weak aliases.
733
        * Versions: Put __pthread_mutexattr_settype under version
734
        GLIBC_2.0.  Don't export __pthread_mutexattr_setkind_np and
735
        __pthread_mutexattr_gettype.
736
 
737
1998-07-23  Andreas Schwab  
738
 
739
        * sysdeps/pthread/bits/libc-lock.h: Make
740
        __pthread_mutexattr_settype weak.  Don't make
741
        __pthread_mutexattr_setkind_np weak.
742
 
743
1998-07-16 10:52  Ulrich Drepper  
744
 
745
        * manager.c (pthread_handle_create): Check whether sched_setscheduler
746
        call can succeed here.
747
 
748
        * mutex.c: Define __pthread_mutexattr_settype and make
749
        __pthread_mutexattr_setkind_np an alias.
750
        Likewise for __pthread_mutexattr_gettype.
751
 
752
1998-07-15 11:00 -0400  Zack Weinberg  
753
 
754
        * attr.c (pthread_attr_setschedpolicy): Don't check whether caller
755
        is root.
756
 
757
1998-07-14 19:38  Ulrich Drepper  
758
 
759
        * sysdeps/pthread/bits/libc-lock.h: Define __libc_cleanup_end.
760
 
761
1998-07-11  Andreas Jaeger  
762
 
763
        * Examples/ex6.c: Include  for usleep.
764
 
765
1998-06-13 11:04  Andreas Schwab  
766
 
767
        * Examples/ex4.c (main): Use exit, not pthread_exit.
768
 
769
1998-07-09 13:39  Ulrich Drepper  
770
 
771
        * Versions: Add __pthread_mutexattr_gettype and
772
        __pthread_mutexattr_settype.
773
        * lockfile.c: Use __pthread_mutexattr_settype instead of
774
        __pthread_mutexattr_setkind_np.
775
        * mutex.c: Define __pthread_mutexattr_gettype and
776
        __pthread_mutexattr_settype.
777
        * weak.c: Likewise.
778
        * sysdeps/pthread/pthread.h: Declare __pthread_mutexattr_gettype and
779
        __pthread_mutexattr_settype.
780
        * sysdeps/pthread/bits/libc-lock.h (__libc_lock_init_recursive):
781
        Use __pthread_mutexattr_settype.
782
 
783
1998-07-08 22:26  Ulrich Drepper  
784
 
785
        * Versions: Add pthread_mutexattr_gettype, pthread_mutexattr_settype.
786
        * mutex.c: Define weak alias pthread_mutexattr_gettype and
787
        pthread_mutexattr_settype.
788
        * sysdeps/pthread/pthread.h: Declare these functions.
789
        Move pthread_sigmask and pthread_kill declaration in separate header.
790
        * sysdeps/unix/sysv/linux/bits/sigthread.h: New file.
791
 
792
1998-07-07 15:20  Ulrich Drepper  
793
 
794
        * Makefile: Add rules to compile and run tests.
795
        * Examples/ex1.c: Little changes to fix warnings.
796
        * Examples/ex2.c: Likewise.
797
        * Examples/ex3.c: Likewise.
798
        * Examples/ex4.c: Likewise.
799
        * Examples/ex5.c: Likewise.
800
        * Examples/ex6.c: New file.
801
 
802
1998-07-05 11:54  Ulrich Drepper  
803
 
804
        * Versions: Add pthread_attr_init to GLIBC_2.1 version in libc.
805
 
806
1998-07-01  Andreas Jaeger  
807
 
808
        * attr.c: Include .
809
 
810
1998-06-30 11:47  Ulrich Drepper  
811
 
812
        * attr.c: Include errno.h.  Use memcpy to copy sched_param.
813
        * internals.h: Include limits.h.
814
        * manager.c: Use memcpy to copy sched_param.
815
        * ptfork.c: Include errno.h.
816
        * pthread.c: Likewise.
817
        * semaphore.c: Likewise.
818
        * specific.c: Likewise.
819
        * spinlock.h: Likewise.
820
        * sysdeps/pthread/pthread.h: Include only allowed headers.  Move
821
        type definition to ...
822
        * sysdeps/pthread/bits/pthreadtypes.h: ...here.  New file.
823
 
824
1998-06-29 12:34  Ulrich Drepper  
825
 
826
        * sysdeps/pthread/pthread.h: Use __PMT not __P for function pointers.
827
 
828
        * sysdeps/pthread/pthread.h: Define various PTHREAD_* symbols also
829
        as macros as demanded in POSIX.1, Annex C.
830
 
831
1998-06-29 12:29  Ulrich Drepper  
832
 
833
        * internals.h (struct pthread_request): For free use pthread_t
834
        instead of pthread_descr.
835
        * join.c (pthread_join): Pass thread_id, not th to manager.
836
        (pthread_detach): Likewise.
837
        * manager.c (__pthread_manager): Except thread ID in FREE_REQ case.
838
        (pthread_exited): Remove detached queue code.
839
        (pthread_handle_free): Expect thread ID parameter and use it to
840
        validate the thread decsriptor.  Don't use detached queue.
841
        Patches by Xavier Leroy.
842
 
843
1998-06-27  Andreas Schwab  
844
 
845
        * libpthread.map: Export accept, longjmp, sigaction, siglongjmp,
846
        _IO_flockfile, _IO_ftrylockfile, _IO_funlockfile,
847
        __pthread_atfork, __pthread_key_create, __pthread_once.
848
        * internals.h: Doc fix.
849
        * pthread.c (__pthread_initialize): Define again.
850
 
851
1998-06-26  Ulrich Drepper  
852
 
853
        * manager.c (pthread_exited): If thread is not detached put it on
854
        special list.
855
        (pthread_handle_free): If thread is not on list with living threads
856
        search on list with detached threads.
857
 
858
        * sysdeps/pthread/pthread.h (PTHREAD_RWLOCK_INITIALIZER): Correct
859
        for new definition of pthread_rwlock_t.
860
 
861
        * spinlock.c: Correct test whether to compile
862
        __pthread_compare_and_swap or not.
863
 
864
1998-06-25 19:27  Ulrich Drepper  
865
 
866
        * attr.c: Finish user stack support.  Change locking code to be safe
867
        in situations with different priorities.
868
        * cancel.c: Likewise.
869
        * condvar.c: Likewise.
870
        * internals.h: Likewise.
871
        * join.c: Likewise.
872
        * manager.c: Likewise.
873
        * mutex.c: Likewise.
874
        * pthread.c: Likewise.
875
        * ptlongjmp.c: Likewise.
876
        * queue.h: Likewise.
877
        * rwlock.c: Likewise.
878
        * semaphore.c: Likewise.
879
        * semaphore.h: Likewise.
880
        * signals.c: Likewise.
881
        * spinlock.c: Likewise.
882
        * spinlock.h: Likewise.
883
        * sysdeps/pthread/pthread.h: Likewise.
884
        Patches by Xavier Leroy.
885
 
886
        * sysdeps/i386/i686/pt-machine.h: New file.
887
 
888
1998-06-25  Ulrich Drepper  
889
 
890
        * sysdeps/pthread/pthread.h: Make [sg]et_stacksize and
891
        [sg]et_stackaddr prototypes always available.
892
 
893
        * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
894
        _POSIX_THREAD_ATTR_STACKSIZE and _POSIX_THREAD_ATTR_STACKADDR.
895
 
896
1998-06-24  Ulrich Drepper  
897
 
898
        * manager.c (pthread_free): Undo patch from 980430.
899
        Reported by David Wragg .
900
 
901
1998-06-09 15:07  Ulrich Drepper  
902
 
903
        * manager.c: Define __pthread_manager_adjust_prio and use it to
904
        increase priority when needed.
905
        * internals.h: Add prototype for __pthread_manager_adjust_prio.
906
        * mutex.c: Optimize mutexes to wake up only one thread.
907
        * pthread.c: Move PID of manager for global variable in structure
908
        element.
909
        Patches by Xavier Leroy.
910
 
911
1998-06-07 13:47  Ulrich Drepper  
912
 
913
        * sysdeps/pthread/bits/libc-lock.h: Optimize cleanup handlers a bit.
914
 
915
1998-06-03  Andreas Jaeger  
916
 
917
        * attr.c: Correct typo.
918
 
919
1998-05-01  Ulrich Drepper  
920
 
921
        * manager.c (pthread_free): Unmap guard before the stack.
922
        Patch by Matthias Urlichs.
923
 
924
1998-04-30  Ulrich Drepper  
925
 
926
        * manager.c (pthread_free): Detect already free child.
927
        Patch by Xavier Leroy, reported by Matthias Urlichs.
928
 
929
1998-04-23  Andreas Schwab  
930
 
931
        * Makefile (linuxthreads-version): Renamed back from
932
        libpthread-version.
933
 
934
1998-04-21  Ulrich Drepper  
935
 
936
        * ptlongjmp.c: Add prototypes for __libc_siglongjmp and
937
        __libc_longjmp.
938
 
939
1998-04-20 14:55  Ulrich Drepper  
940
 
941
        * Makefile (libpthread-routines): Add ptlongjmp and spinlock.
942
        * internals.h: Add definitions for new spinlock implementation.
943
        * ptlongjmp.c: New file.
944
        * spinlock.c: New file.
945
        * spinlock.h (acquire): Don't reschedule using __sched_yield, use
946
        new function __pthread_acquire to prevent deadlocks with thread
947
        with different priorities.
948
        Patches by Xavier Leroy .
949
 
950
1998-03-16  Andreas Schwab  
951
 
952
        * manager.c (__pthread_manager): Reduce first argument to select
953
        to include just the needed file descriptor.
954
 
955
1998-03-17 00:06  Ulrich Drepper  
956
 
957
        * manager.c: Fix last patch which caused core dumps.
958
 
959
        * pthread.c: Correctly handle missing SIGRTMIN.
960
 
961
1998-03-15  Andreas Schwab  
962
 
963
        * libpthread.map: Add __libc_internal_tsd_get and
964
        __libc_internal_tsd_set.  Add missing cancelable functions. Export
965
        libc internal versions of the cancelable functions.
966
 
967
1998-03-13 16:51  Ulrich Drepper  
968
 
969
        * weaks.c: Define pthread_attr_init as GLIBC_2.0 and GLIBC_2.1.
970
 
971
1998-03-13 00:46  Ulrich Drepper  
972
 
973
        * attr.c: Implement pthread_attr_[gs]etguardsize,
974
        pthread_attr_[gs]setstackaddr, pthread_attr_[gs]etstacksize.
975
        Change pthread_attr_init to have two interfaces.
976
        * internals.h (struct _pthread_descr_struct): Add new fields for
977
        above functions.
978
        * libpthread.map: Add names in GLIBC_2.1 section.
979
        * manager.c (pthread_handle_create): Implement guardsize and
980
        user stack.
981
        (pthread_free): Likewise.
982
        * pthread.c (pthread_create): Add new interface for changed
983
        pthread_attr_t.
984
        * sysdeps/pthread/pthread.h: Add prototypes for new functions.
985
        * sysdeps/unix/sysv/linux/bits/local_lim.h: Add definition of
986
        PTHREAD_STACK_MIN.
987
 
988
1998-03-11 00:42  Wolfram Gloger  
989
 
990
        * manager.c: Enable resetting of the thread scheduling policy
991
        to SCHED_OTHER when the parent thread has a different one.
992
 
993
1998-02-01 13:51  Ulrich Drepper  
994
 
995
        * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
996
        _POSIX_ASYNCHRONOUS_IO.
997
 
998
        * sysdeps/pthread/pthread.h: Define bits for Unix98 variants of
999
        mutexes.
1000
        * mutex.c: Implement new mutex types.
1001
 
1002
        * internals.h: Include .
1003
 
1004
        * libpthread.map: Add __erno_location and __h_errno_location.
1005
 
1006
        * errno.c: Return pointer to variable actually in use.  This might
1007
        not be the one in the thread structure.
1008
        * internals.h (struct _pthread_descr_struct): Add new fields p_errnop
1009
        and p_h_errnop.
1010
        * manager.c (__pthread_manager): Set p_errnop and p_h_errnop member
1011
        of manager thread structure.
1012
        (pthread_handle_create): Set p_errnop and p_h_errnop members for new
1013
        thread.
1014
        * pthread.c: Adapt initializer for thread structures.
1015
        (__pthread_initial_thread): Set p_errnop and p_h_errnop member.
1016
        (__pthread_reset_main_thread): Reset p_errnop and p_h_errnop of
1017
        current thread to global variables.
1018
 
1019
1998-01-31 17:27  Ulrich Drepper  
1020
 
1021
        * rwlock.c: New file.
1022
        * Makefile (libpthread-routines): Add rwlock.
1023
        * sysdeps/pthread/pthread.h: Define data structures and declare
1024
        functions.
1025
        * libpthread.map: Add new functions.
1026
 
1027
1997-12-18 13:50  Philip Blundell  
1028
 
1029
        * sysdeps/arm/pt-machine.h: New file; add ARM support.
1030
        * sysdeps/arm/Implies: likewise.
1031
        * README: Document it.
1032
 
1033
1997-12-13  Andreas Schwab  
1034
 
1035
        * signals.c: Remove unneeded initializer for sigwaited, saving a
1036
        warning.
1037
 
1038
1997-04-11 01:18  Andreas Schwab  
1039
 
1040
        * semaphore.c (sem_init): Set sem_spinlock only if available.
1041
 
1042
1997-12-04 01:48  Ulrich Drepper  
1043
 
1044
        * mutex.c: Implement PTHREAD_MUTEX_CHECKERROR.
1045
        * sysdeps/pthread/pthread.h: Define PTHREAD_MUTEX_CHECKERROR.
1046
 
1047
        * Makefile: Update from LinuxThreads 0.7.
1048
        * internals.h. Likewise.
1049
        * manager.c: Likewise.
1050
        * mutex.c: Likewise.
1051
        * pthread.c: Likewise.
1052
        * signals.c: Likewise.
1053
        * specific.c: Likewise.
1054
        * Examples/ex3.c: Likewise.
1055
 
1056
1997-11-20 18:13  Ulrich Drepper  
1057
 
1058
        * pthread.c (__pthread_reset_main_thread): Close pipe only if still
1059
        open.
1060
 
1061
1997-10-29 05:38  Ulrich Drepper  
1062
 
1063
        * wrapsyscall.c: Add socket functions which are also cancelation
1064
        points.
1065
 
1066
1997-10-19 21:40  Wolfram Gloger  
1067
 
1068
        * specific.c (__libc_internal_tsd_set, __libc_internal_tsd_get):
1069
        New functions for fast thread specific data within libc.
1070
 
1071
        * internals.h: Add new array p_libc_specific to struct
1072
        _pthread_descr_struct.
1073
 
1074
        * sysdeps/pthread/bits/libc-lock.h: Declare new functions.
1075
 
1076
1997-10-13 05:39  Ulrich Drepper  
1077
 
1078
        * semaphore.h: Add __BEGIN_DECLS/__END_DECLS.
1079
        Reported by Ralf Corsepius .
1080
 
1081
1997-08-29 03:05  Ulrich Drepper  
1082
 
1083
        * internals.h (struct _pthread_descr_struct): Add definitions for
1084
        two-level specific key handling.
1085
        * manager.c (pthread_handle_create): Initialize specific memory array.
1086
        * specific.c: Implement two-level key handling.
1087
        * weaks.c: Don't provide dummy key handling.
1088
        * sysdeps/pthread/bits/libc-lock.h: Typedef __libc_lock_t (no #define).
1089
        Add definition of __libc_key_t.
1090
        * sysdeps/unix/sysv/linux/bits/local_lim.h: Define PTHREAD_KEYS_MAX
1091
        as 1024.
1092
        Add definition of _POSIX_THREAD_DESTRUCTOR_ITERATIONS and
1093
        PTHREAD_DESTRUCTOR_ITERATIONS.
1094
 
1095
        * manager.c (pthread_handle_create): Compare mmap result with
1096
        MAP_FAILED.
1097
 
1098
        * ptfork.c: Rename to __pthread_atfork and make old name a weak alias.
1099
        * sysdeps/pthread/bits/pthread.h: Add prototype for __pthread_atfork.
1100
 
1101
1997-08-22 19:04  Richard Henderson  
1102
 
1103
        sysdeps/sparc -> sysdeps/sparc/sparc32
1104
        sysdeps/sparc64 -> sysdeps/sparc/sparc64
1105
 
1106
        * internals.h: Change definition of THREAD_SELF to be an expression,
1107
        not a statement that did a return.
1108
        * sysdeps/alpha/pt-machine.h (THREAD_SELF): Update accordingly.
1109
        * sysdeps/sparc/sparc32/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF):
1110
        Follow Solaris and use a "system reserved" register (%g6) to hold
1111
        the thread descriptor.
1112
        * sysdeps/sparc/sparc64/pt-machine.h: Likewise.
1113
 
1114
1997-08-03 00:09  Ulrich Drepper  
1115
 
1116
        * mutex.c: Correct pthread_once.  Patch by Xavier Leroy.
1117
        * sysdeps/pthread/pthread.h: Add prototype for __pthread_once.
1118
        * sysdeps/pthread/bits/pthread.h: Add macros for __libc_once.
1119
 
1120
        * semaphore.c: Include spinlock.h only when needed.
1121
 
1122
        * specific.c (__pthread_setsepcific, __pthread_getspecific): Reject
1123
        keys for entries not in use.
1124
 
1125
        * weaks.c: Implement key handling functions for real.
1126
 
1127
1997-06-29  01:04  Richard Henderson  
1128
 
1129
        Initial sparc64-linux support:
1130
        * linuxthreads/sysdeps/sparc64/Implies: New file.
1131
        * linuxthreads/sysdeps/sparc64/pt-machine.h: Likewise.
1132
 
1133
1997-06-29 00:48  Ulrich Drepper  
1134
 
1135
        * semaphore.c: Include spinlock.h at correct place.
1136
        Patch by HJ Lu.
1137
 
1138
1997-06-13 10:06  Richard Henderson  
1139
 
1140
        The Great Bit File Move:
1141
        * sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h.
1142
        * sysdeps/powerpc/semaphorebits.h: Likewise.
1143
        * sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise.
1144
        * sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise.
1145
        * sysdeps/pthread/libc-lock.h: -> bits/
1146
        * sysdeps/pthread/stdio-lock.h: Likewise.
1147
        * sysdeps/unix/sysv/linux/local_lim.h: Likewise.
1148
        * sysdeps/unix/sysv/linux/posix_opt.h: Likewise.
1149
        * semaphore.h: Likewise.
1150
        * sysdeps/pthread/pthread.h: Likewise.
1151
 
1152
        * lockfile.c:  -> .
1153
        * semaphore.h: Likewise.
1154
 
1155
        * Makefile: (headers): foo.h -> bits/foo.h.
1156
        * sysdeps/pthread/Makefile: Likewise.
1157
 
1158
1997-04-11 01:18  Andreas Schwab  
1159
 
1160
        * semaphore.c (sem_init): Set sem_spinlock only if available.
1161
 
1162
        * sysdeps/m68k/pt-machine.h (testandset, __compare_and_swap): Fix
1163
        asm constraints.
1164
 
1165
1997-04-09 03:00  Ulrich Drepper  
1166
 
1167
        Update from LinuxThreads 0.6.
1168
 
1169
        * attr.c (pthread_attr_getdetachstate): Use __sched_get_priority_max
1170
        and __sched_get_priority_min instead of names without `__'.
1171
 
1172
        * manager.c: Rewrite large parts to implement opaque pthread_t.
1173
 
1174
        * cancel.c: Adapt for opaque pthread_t type.
1175
        * condvar.c: Likewise.
1176
        * errno.c: Likewise.
1177
        * join.c: Likewise.
1178
        * mutex.c: Likewise.
1179
        * pthread.c: Likewise.
1180
        * signals.c: Likewise.
1181
        * specific.c: Likewise.
1182
        * restart.h: Likewise.
1183
        * queue.h: Likewise.
1184
        * Examples/ex3.c: Likewise.
1185
        * Examples/ex4.c: Likewise.
1186
        * sysdeps/pthread/pthread.h: Likewise.
1187
 
1188
        * pthread.c: Accumulate time for all threads in thread manager.
1189
 
1190
        * semaphore.c: Implement fallback implementation for architectures
1191
        sometimes missing compare-exchange operations.
1192
 
1193
        * cancel.c (pthread_cancel): Validate handle argument.
1194
        * join.c (pthread_join): Likewise.
1195
        (pthread_detach): Likewise.
1196
        * signals.c (pthread_kill): Likewise.
1197
 
1198
        * spinlock.h (acquire): Use __sched_yield not sched_yield.
1199
 
1200
        * queue.h (enqueue): Enqueue thread according to priority.
1201
 
1202
        * internals.c (struct pthread_start_args): New struct for passing
1203
        args to cloning function.
1204
        (struct _pthread): Rename to _pthread_descr_struct and adapt for
1205
        opaque pthread_t.
1206
 
1207
        * Examples/Makefile (clean): Pass -f option to rm.
1208
 
1209
        * sysdeps/i386/pt-machine.h: Add check for compare-exchange instruction
1210
        and define TEST_FOR_COMPARE_AND_SWAP.
1211
        * sysdeps/i386/i486/pt-machine.h: Removed.
1212
 
1213
        * sysdeps/unix/sysv/linux/local_lim.h (PTHREAD_THREADS_MAX): Increase
1214
        to 1024.
1215
 
1216
1997-04-04 16:38  Ulrich Drepper  
1217
 
1218
        * restart.h (suspend): Clear p_signal before suspending.
1219
        (suspend_with_cancellation): Likewise.
1220
        Patch by Xavier Leroy .
1221
 
1222
        * weaks.c: Make __pthread_key_create return 1.
1223
        * sysdeps/pthread/libc-lock.h: Define __libc_key_create,
1224
        __libc_getspecific, __libc_setspecific, and __libc_key_t.
1225
        * sysdeps/pthread/stdio-lock.h: Don't care for implementation not
1226
        using libio.
1227
 
1228
1997-03-19 15:13  Miguel de Icaza  
1229
 
1230
        * sysdeps/sparc/pt-machine (RELEASE): Fix.
1231
 
1232
1997-03-01 07:55  Geoff Keating  
1233
 
1234
        * sysdeps/powerpc/Implies: Added.
1235
        * sysdeps/powerpc/pt-machine.h: Added.
1236
        * sysdeps/powerpc/semaphorebits.h: Added.
1237
 
1238
1997-01-22 01:22  Ulrich Drepper  
1239
 
1240
        * linuxtheads/pthread.c (__pthread_initial_thread): Correct
1241
        initializer.
1242
        (__pthread_manager_thread): Likewise.
1243
        Reported by Andreas Jaeger.
1244
 
1245
1997-01-18 22:15  Richard Henderson  
1246
 
1247
        Since sigset_t no longer fits in a register, we can't pass in the
1248
        thread's initial mask so easily.  Take this opportunity to simplify
1249
        the clone implementation by only accepting a single void* argument.
1250
 
1251
        * linuxthreads/manager.c (__pthread_manager): Put thread vitals
1252
        in the thread struct instead of as arguments through clone.
1253
        (pthread_start_thread): Look for them there.
1254
        * linuxthreads/internals.h (struct _pthread): Add p_initial_fn,
1255
        p_initial_fn_arg, p_initial_mask.  Fix __pthread_manager proto.
1256
        * linuxthreads/pthread.c (pthread_initialize_manager): Revise
1257
        clone invocation.

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.