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

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [compat/] [posix/] [v2_0/] [ChangeLog] - Blame information for rev 27

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

Line No. Rev Author Line
1 27 unneback
2003-03-03  Jonathan Larmour  
2
 
3
        * tests/signal2.c (cause_illegal_access): PowerPC only generates
4
        alignment exceptions in little-endian mode, so make that a special
5
        case.
6
 
7
        * tests/mutex3.c: Include POSIX headers before feature tests to
8
        prevent spurious CYG_TEST_NA.
9
 
10
2003-02-24  Jonathan Larmour  
11
 
12
        * doc/posix.sgml: Expunge EL/IX. Dead standard.
13
        * cdl/posix.cdl: Add doc link.
14
 
15
2003-02-13  Jonathan Larmour  
16
 
17
        * src/mutex.cxx: Include sched.hxx for scheduler lock/unlock primitives.
18
        Reported by Jani Monoses.
19
 
20
2003-02-10  Gary Thomas  
21
 
22
        * tests/signal3.c (main): Reorg code so it builds with older GCC.
23
 
24
2003-01-31  Nick Garnett  
25
 
26
        * src/time.cxx (alarm_action): Added call to
27
        cyg_posix_signal_sigwait() to wake up any sigwait()ing threads.
28
 
29
        * src/signal.cxx (cyg_posix_signal_sigwait): Added this function
30
        to export access to signal_sigwait conditional variable.
31
        (sigtimedwait): Added call to cyg_posix_timer_asr() to allow timer
32
        signals to be delivered here.
33
 
34
        * src/pprivate.h: Added prototype for cyg_posix_signal_sigwait().
35
 
36
        * cdl/posix.cdl:
37
        * tests/signal3.c: Added this program to test interaction of
38
        timers and signals, particularly sigwait(). Based on a test
39
        program from N.Suresh .
40
 
41
2003-01-20  Jonathan Larmour  
42
 
43
        * src/signal.cxx (cyg_posix_deliver_signals): silence warning.
44
 
45
        * src/time.cxx (cyg_timespec_to_ticks): Remove use of default arg in
46
        definition.
47
 
48
2003-01-18  Jonathan Larmour  
49
 
50
        * src/mqueue.cxx: Fix multi-line string literal warning.
51
 
52
2003-01-13  Jonathan Larmour  
53
 
54
        * doc/posix.sgml: Document them.
55
 
56
        * src/mqueue.cxx (mq_timedreceive): Make fully compliant by dealing
57
        with bogus timeouts.
58
        (mq_timedsend): Ditto.
59
 
60
2003-01-13  Dmitriy Korovkin  
61
 
62
        * src/mqueue.cxx (mq_timedsend): New function. Implementing POSIX
63
        1003.1d draft definition.
64
        (mq_timedreceive): Ditto.
65
 
66
2002-12-10  Wade Jensen  
67
2002-12-10  Jonathan Larmour  
68
 
69
        * src/mutex.cxx (pthread_cond_timedwait): Initialize clock converters
70
        only once ever.
71
 
72
2002-11-26  Nick Garnett  
73
 
74
        * src/signal.cxx: Changed the three routines added in the last
75
        change so that they can be called safely from non-POSIX threads.
76
 
77
2002-11-10  Nick Garnett  
78
 
79
        * src/signal.cxx: Added three exportable routines that may be used
80
        by other packages to manipulate the signal mask, test for
81
        deliverable signals, and have signals delivered at controlled
82
        points.
83
 
84
        * include/export.h: Added macros to export signal mask management,
85
        detection and delivery to other packages.
86
 
87
2002-11-05  Jonathan Larmour  
88
 
89
        * tests/tm_basic.cxx: Use  for diag_printf
90
        prototype.
91
 
92
2002-05-23  Jesper Skov  
93
 
94
        * cdl/posix.cdl: Don't build tests using signals when posix
95
        signals are disabled.
96
 
97
2002-05-21  Jesper Skov  
98
 
99
        * tests/mutex3.c: Added an NA check.
100
 
101
2002-04-09  Jonathan Larmour  
102
 
103
        * src/signal.cxx (cyg_deliver_signals): Don't assert here for an
104
        unhandled signal (unless there's no _exit). Trace it though.
105
 
106
2002-04-08  Jonathan Larmour  
107
 
108
        * src/sem.cxx (sem_getvalue): return 0, and put value in *sval.
109
 
110
2002-04-03  Jonathan Larmour  
111
 
112
        * cdl/posix.cdl: Allow clocks to be configured again.
113
 
114
2002-03-05  Jesper Skov  
115
 
116
        * src/pprivate.h: Correct conditional declaration of timespec
117
        functions.
118
 
119
        * src/sched.cxx (sched_rr_get_interval): Return ENOSYS when
120
        CYGPKG_POSIX_CLOCKS disabled.
121
 
122
2002-02-27  Robin Farine  
123
 
124
        * src/pthread.cxx (pthread_exit): While running thread static
125
        storage destructors, set the thread's value associated with the
126
        current key to NULL before invoking the destructor.
127
 
128
2002-02-14  Nick Garnett  
129
 
130
        * doc/posix.sgml: Generally fixed up and reformatted to make this
131
        file readable by mere humans. Some omissions and outdated
132
        information fixed, but not substantially changed from the
133
        original.
134
 
135
        * cdl/posix.cdl: Changed some definitions and dependencies so that
136
        disabling the timers does not disable threads too. This was
137
        largely a consequence of trying to document the behaviour of these
138
        options.
139
 
140
2002-02-14  Jonathan Larmour  
141
 
142
        * doc/posix.sgml: New file, originally accompanied by this ChangeLog:
143
        2001-12-22  Jonathan Larmour  
144
 
145
                * ecos-elix.sgml: Do a minor cleanup of the function prototype
146
                layouts.
147
                Should be done better than this, but this is at least not
148
                _completely_ wrong any more.
149
                Also several more layout problems due to incorrect tags fixed.
150
 
151
        2001-12-07  Jonathan Larmour  
152
 
153
                * ecos-elix.sgml: Add getcwd as supported now.
154
 
155
        2001-12-06  Jonathan Larmour  
156
 
157
                * ecos-elix.sgml: Created from old framemaker version.
158
 
159
2002-01-21  Jonathan Larmour  
160
 
161
        * src/sched.cxx (sched_get_priority_min): Don't allow idle thread
162
        priority as a valid priority.
163
        Case #106952.
164
 
165
2001-12-11  Nick Garnett  
166
 
167
        * tests/mqueue2.c (cyg_user_start): Added CYG_TEST_INIT() to
168
        NOTAPPLICABLE variant, otherwise the order of breakpoints are all
169
        wrong and the testfarm registers a failure.
170
 
171
2001-11-06  Gary Thomas  
172
 
173
        * include/muttypes.h: Need  configuration info,
174
        otherwise structures defined here could have the wrong size.
175
 
176
2001-10-25  I-Jui Sung 
177
 
178
        * src/mqueue.cxx (do_mq_unlink): Nullify table entries' mq as this
179
        is used by mq_open to see if the entry is used.
180
 
181
2001-10-11  Jesper Skov  
182
 
183
        * tests/mutex3.c: Fixed warning.
184
        (new_thread): Fixed allocation: increase counter
185
        before starting threads which have been allocated resources.
186
 
187
        * tests/signal2.c (cause_illegal_access): Fix warning.
188
 
189
2001-10-10  Jesper Skov  
190
 
191
        * cdl/posix.cdl: Only build sem.cxx when the semaphores component
192
        is enabled.
193
 
194
2001-10-09  Jonathan Larmour  
195
 
196
        * src/pprivate.h (pthread_info): Conditionalize signal specific
197
        members. Conditionalize declaration of
198
        cyg_posix_pthread_release_thread().
199
 
200
        * cdl/posix.cdl (CYGPKG_POSIX_CLOCKS): new option to separately
201
        configure posix clocks from timers.
202
        (CYGPKG_POSIX_TIMERS): require clocks and signals.
203
 
204
        * include/time.h: Make proper ISO C. Conditionalize on
205
        CYGPKG_POSIX_TIMERS correctly wrt the above change.
206
 
207
        * src/pthread.cxx (posix_asr): Call signal and timer subsystems
208
        conditionally.
209
 
210
        * src/pthread.cxx (pthread_reap): Don't destroy signal handling
211
        fields if there is no signal handling subsystem.
212
        (cyg_posix_pthread_release_thread): Conditionalize on signals.
213
        (pthread_create): Init signal subsys conditionally.
214
 
215
        * src/signal.cxx (sleep): Move to...
216
 
217
        * src/time.cxx: ...here.
218
        Conditionalize throughout depending on whether it's POSIX clocks
219
        or more specifically POSIX timers.
220
        (nanosleep): Use PTHREAD_TESTCANCEL() not pthread_testcancel().
221
        Get current thread from kernel not pthreads to remove pthread
222
        dependency.
223
 
224
2001-10-09  Jesper Skov  
225
 
226
        * tests/signal2.c: Also do NA check for signals.
227
 
228
2001-10-01  Jonathan Larmour  
229
 
230
        * src/mqueue.cxx (mq_open): Conditionalize use of sigev correctly.
231
        (mq_close): Similarly.
232
 
233
2001-09-28  Jonathan Larmour  
234
 
235
        * cdl/pthread.cdl (CYGNUM_POSIX_MAIN_DEFAULT_PRIORITY): Clarify
236
        POSIX thread priority description.
237
 
238
2001-09-28  Jesper Skov  
239
 
240
        * cdl/pthread.cdl: Changed default priority of POSIX main to
241
        16. This allows service threads (such as DHCP thread) to run when
242
        started from main().
243
 
244
2001-09-10  Jonathan Larmour  
245
 
246
        * include/pthread.h: Separate mutex and condvar API into separate
247
        header file to fix configury problems.
248
        * include/mutex.h: New file for the above.
249
        * cdl/posix.cdl: provide the correct configury for the isoinfra
250
        package to include the above file.
251
        * cdl/pthread.cdl: Move _POSIX_PTHREAD_PRIO_INHERIT and
252
        _POSIX_THREAD_PRIO_PROTECT to cdl/posix.cdl.
253
 
254
2001-09-07  Jonathan Larmour  
255
 
256
        * src/sem.cxx (sem_trywait): Actually use the return value.
257
 
258
        * src/sched.cxx (sched_get_priority_max): Use MAX not MIN
259
        (sched_get_priority_min): Use MIN not MAX.
260
 
261
2001-09-06  Jesper Skov  
262
 
263
        * cdl/posix.cdl: Moved signal implements statements to the
264
        CYGPKG_POSIX_SIGNALS component.
265
 
266
2001-08-06  Jonathan Larmour  
267
 
268
        * cdl/posix.cdl: Reorganize dependencies so that signals, timers
269
        and pthreads really can be disabled, and the relevant files don't
270
        get built.
271
        Build new mutex.cxx file.
272
        Remove duplicate CYGPKG_POSIX_SCHED dependency for pthreads.
273
 
274
        * include/limits.h: Don't include irrelevant header dependencies.
275
 
276
        * include/muttypes.h: New type defining mutex/cond var types separately
277
        from other pthread types.
278
 
279
        * include/types.h: Remove mutex/cond var types.
280
 
281
        * include/signal.h: Conditionalize on CYGPKG_POSIX_SIGNALS
282
 
283
        * include/sigsetjmp.h: Don't include irrelevant header dependencies.
284
        Rewrite sigsetjmp in a much more compiler friendly (and readable)
285
        way with less type punning.
286
 
287
        * src/misc.cxx: Don't include sysconf cases when pthreads or
288
        CYGPKG_POSIX_TIMERS not enabled.
289
 
290
        * src/mutex.cxx: New file, broken out of pthreads.cxx, as most
291
        of it is not fixed to the pthreads implementation, and I've fixed
292
        the bits that were too tied to it.
293
 
294
        * src/pprivate.h: Conditionalize definitions that are specific
295
        to CYGPKG_POSIX_PTHREAD. Ditto for prototypes for CYGPKG_POSIX_SIGNALS
296
        and CYGPKG_POSIX_TIMERS. Move PTHREAD_ENTRY/RETURN etc. macros
297
        here so they can be used throughout the package.
298
 
299
        * src/pthread.cxx: Remove mutex/cond var implementation, and
300
        entry/return macros, as per above.
301
 
302
        * src/signal.cxx (cyg_sigqueue): Don't just set non-queueable signals
303
        pending - also forcibly wake up any blocked threads.
304
        (siglongjmp): Use new layout of sigjmp_buf.
305
 
306
        * tests/mutex3.c:
307
        * tests/pthread1.c:
308
        * tests/pthread2.c:
309
        * tests/pthread3.c:
310
        * tests/signal1.c:
311
        * tests/sigsetjmp.c:
312
        * tests/timer1.c:
313
        * tests/tm_basic.cxx:
314
        Correct configuration dependencies, and do NA appropriately.
315
 
316
2001-08-03  Nick Garnett  
317
 
318
        Imported from a development branch:
319
 
320
        2001-06-27  Nick Garnett  
321
 
322
                * tests/pthread3.c:
323
                Modified the loop that waits for the threads to get going so that
324
                it will function correctly in an SMP system, where the threads
325
                will run in parallel.
326
 
327
                * tests/mutex3.c: Disabled this test for SMP systems. It depends
328
                too much on predicting the priority-driven execution order of the
329
                threads. In an SMP system, some threads will run in parallel and
330
                falsify the assumptions.
331
 
332
        2001-05-25  Nick Garnett  
333
 
334
                * src/signal.cxx (siglongjmp): Minor change to satisfy latest C++
335
                compiler.
336
 
337
2001-06-14  Jonathan Larmour  
338
 
339
        * src/pthread.cxx (pthread_attr_setstacksize): Correct stack
340
        size assertion.
341
 
342
2001-06-12  Jonathan Larmour  
343
 
344
        * src/pthread.cxx (MAIN_DEFAULT_STACK_SIZE): Define to use at
345
        least PTHREAD_STACK_MIN for main_stack.
346
 
347
2001-05-01  Nick Garnett  
348
 
349
        [x86 branch]
350
        * tests/signal2.c (cause_illegal_access): Added code for I386
351
        architecture to provoke General Protection Fault.
352
 
353
        * src/except.cxx: Removed some extraneous diag_printf()s.
354
 
355
2001-04-25  Bart Veer  
356
 
357
        * tests/tm_basic.cxx:
358
        This test is now functional on the synthetic target.
359
 
360
2001-04-20  Jonathan Larmour  
361
 
362
        * src/time.cxx (cyg_ticks_to_timespec): Actually don't bother
363
        with working out seconds using convertors. Instead just divide
364
        down ns from a long long.
365
 
366
2001-04-19  Jonathan Larmour  
367
 
368
        * src/time.cxx (cyg_ticks_to_timespec): Clock convertors round off,
369
        so adjust timespec accordingly.
370
 
371
2001-02-14  Jonathan Larmour  
372
 
373
        * include/pthread.h: Remove pthread_canceled() and
374
        pthread_testcancel_unlock().
375
 
376
        * src/pthread.cxx: Ditto.
377
        (pthread_join): Restructure to have function exit only at function end
378
        (pthread_cond_timedwait): Check for timeouts and return ETIMEDOUT
379
 
380
        * src/signal.cxx (sigtimedwait): Restructure cancellation testing
381
 
382
        * src/time.cxx (nanosleep): test for cancellation at the end of the
383
        function to keep Nick happy ;).
384
 
385
2001-02-11  Jonathan Larmour  
386
 
387
        * include/pthread.h: Add new pthread_testcancel_unlock and
388
        pthread_canceled functions as eCos extensions.
389
        Rename existing pthread_canceled variable to pthread_cancelled_dummy_var
390
 
391
        * src/pthread.cxx (pthread_canceled): New function to interrogate if
392
        current thread has deferred cancel pending
393
        (pthread_testcancel_unlock): New function. Like testcancel, but unlocks
394
        a mutex before exitting the thread.
395
        (checkforcancel): New internal function
396
        (pthread_join): Add thread cancellation checks.
397
        (pthread_cond_wait): Ditto.
398
        (pthread_cond_timedwait): Ditto.
399
        (pthread_testcancel): Use checkforcancel()
400
 
401
        * src/sem.cxx (sem_wait): Add thread cancellation checks
402
        * src/signal.cxx (sigtimedwait): Ditto.
403
        Also make compilation of this file conditional on CYGPKG_POSIX_SIGNALS
404
        * src/time.cxx (nanosleep): Ditto.
405
        Also make compilation of this file conditional on CYGPKG_POSIX_TIMERS
406
 
407
        * cdl/posix.cdl (CYGPKG_POSIX_TIMERS): Implements POSIX timer ops.
408
        Add explicit kernel and pthread dependencies.
409
 
410
        * tests/sigsetjmp.c (pthread_entry1): Fix incorrect thread no. output
411
 
412
        * tests/pthread3.c: Add deferred cancellation test.
413
 
414
2001-01-11  Nick Garnett  
415
 
416
        * src/pthread.cxx (pthread_testcancel): Added test for self !=
417
        NULL in case this gets called from a non-pthread.
418
 
419
2000-12-22  Jonathan Larmour  
420
 
421
        * src/pthread.cxx (pthread_measure_stack_usage): New function
422
        to measure stack usage.
423
 
424
        * include/pthread.h: Prototype it.
425
 
426
        * cdl/pthread.cdl: remove CYGNUM_POSIX_MAIN_DEFAULT_STACK_SIZE and
427
        instead implement CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
428
 
429
        * src/pthread.cxx: Use stack size for main from libc_startup package
430
        to prevent confusion
431
        (cyg_posix_pthread_start): Likewise
432
 
433
2000-12-06  Jonathan Larmour  
434
 
435
        * src/signal.cxx: include unistd.h for _exit
436
 
437
2000-11-20  Nick Garnett  
438
 
439
        * src/signal.cxx (cyg_deliver_signals): Added else in code to
440
        handle SIG_DFL. Otherwise if the SA_SIGINFO bit is set we call the
441
        signal handler twice!
442
 
443
2000-11-07  Jonathan Larmour  
444
 
445
        * src/signal.cxx (cyg_posix_thread_siginit): Add extra thread
446
        argument so that threads can inherit parent's sigmask.
447
 
448
        * src/pthread.cxx (pthread_create): Call with parent thread
449
 
450
        * src/pprivate.h: Change cyg_posix_thread_siginit prototype to take
451
        parent thread argument
452
 
453
        * tests/signal1.c: Add more checking of sigwaits, and fix so that it's
454
        only called when the signal is masked. Check errno values too
455
        sometimes.
456
 
457
2000-11-02  Jonathan Larmour  
458
 
459
        * src/signal.cxx (sigtimedwait): return signal number on success,
460
        not 0
461
        (SIGNAL_RETURN_VALUE): New macro for returning from functions with
462
        valid non-zero returns
463
        (sigwaitinfo): Pass on sigtimedwait result with SIGNAL_RETURN_VALUE
464
        macro as it may return the signal number.
465
 
466
2000-11-01  Jonathan Larmour  
467
 
468
        * src/signal.cxx (sigtimedwait): Check for SIGALRMs as a special
469
        case when looping as it won't have been set pending if it was
470
        masked.
471
        (check_sigalarm): New function extracted from the posix signal ASR
472
        (sigalrm_action): Unconditionally wake up threads waiting in sigwait
473
        so that they can check for pending SIGALRMs even if they were
474
        masked.
475
        (cyg_deliver_signals): Handle SIG_DFL signals properly, and check
476
        for bad signal handlers.
477
        (cyg_posix_signal_start): Initialize default signal actions to SIG_DFL
478
 
479
2000-10-27  Jesper Skov  
480
 
481
        * tests/signal2.c (cause_illegal_access): Don't loop forever.
482
 
483
2000-10-16  Jonathan Larmour  
484
 
485
        * include/sigsetjmp.h (sigsetjmp): Various fixes to make portable
486
        across all HALs (by avoiding CYGARC_JMP_BUF_SIZE) and remove warnings.
487
        * src/signal.cxx (siglongjmp): Likewise
488
 
489
2000-10-12  Nick Garnett  
490
 
491
        * include/sigsetjmp.h: Added this header to define
492
        sigjmp_buf,sigsetjmp() and siglongjmp().
493
 
494
        * cdl/posix.cdl:
495
        Added support for providing sigsetjmp implementation and header.
496
        Added sigsetjmp test.
497
 
498
        * src/signal.cxx: Added siglongjmp().
499
 
500
        * tests/sigsetjmp.c: Added this test for sigsetjmp(), siglongjmp()
501
        functionality. This is also a test for longjmping out of signal
502
        handlers.
503
 
504
        * tests/signal2.c:
505
        Ifdeffed around cause_* functions to avoid compiler warnings when
506
        they are not needed.
507
        Changed CYG_TEST_NA() calls to CYG_TEST_INFO() and changed
508
        CYG_TEST_FINISH() to CYG_TEST_PASS_FINISH(). With the _NA's there,
509
        the first unsupported exception just terminates the program, and
510
        does not give any subsequent supported ones a chance to run.
511
 
512
2000-10-12  Jesper Skov  
513
 
514
        * tests/timer1.c (main): Fix exit check.
515
 
516
2000-10-11  Nick Garnett  
517
 
518
        * src/pthread.cxx: Fixed cyg_posix_pthread_release_thread() to
519
        work for _DETACHED threads as well as for _RUNNING ones. Also
520
        fixed a bug in test to decrement counter in this routine.
521
 
522
        * src/pprivate.h: Added note about retaining numerical order of
523
        PTHREAD_STATE_* defines.
524
 
525
        * tests/timer1.c: Fixed some bugs of the how-did-it-ever-work
526
        variety.
527
 
528
2000-10-05  Nick Garnett  
529
 
530
        * src/misc.cxx:
531
        Added a set of compatibility functions to aid portability and
532
        improve standards compliance.
533
        Added cyg_posix_function_[start|finish] to set up and terminate
534
        POSIX API functionality wrt signal and cancellation behaviour.
535
        (Lots more to do here).
536
 
537
        * include/export.h:
538
        Added this file to contain definitions that can be exported from
539
        the POSIX package to others.
540
 
541
        * src/pprivate.h: Added include of export.h
542
 
543
2000-09-11  Jonathan Larmour  
544
 
545
        * include/limits.h (OPEN_MAX): Don't define here - let FS infra do
546
        that.
547
        (LINK_MAX): Ditto
548
        (NAME_MAX): Ditto
549
        (PATH_MAX): Ditto
550
 
551
2000-09-04  Nick Garnett  
552
 
553
        * tests/pthread2.c:
554
        * tests/pthread3.c:
555
        Fixed bug in calculation of thread stack addresses.
556
 
557
        * src/misc.cxx (sysconf): Change zero returns to -1 when a feature
558
        is not supported.
559
 
560
2000-08-08  Jonathan Larmour  
561
 
562
        * include/limits.h: Don't define SSIZE_MAX here, leave it to the
563
        isoinfra default.
564
 
565
2000-07-27  Jonathan Larmour  
566
 
567
        * tests/signal2.c: NA if no setjmp/longjmp
568
 
569
2000-07-26  Nick Garnett  
570
 
571
        * include/pthread.h:
572
        * src/pthread.cxx (pthread_testcancel): Reversed addition of cyg_
573
        to this symbol.
574
 
575
2000-07-25  Jonathan Larmour  
576
 
577
        * src/pthread.cxx: Define main_stack and main_thread as static
578
        Rename pthread_canceled -> cyg_pthread_canceled - pthread_ may be
579
        a reserved name space but this makes explicit it is implementation-
580
        and not standard-defined
581
        (PTHREAD_ENTRY_VOID): Define for funcs that take no args
582
        (pthread_testcancel): Call PTHREAD_ENTRY_VOID()
583
 
584
        * include/pthread.h: Rename pthread_canceled -> cyg_pthread_canceled
585
 
586
2000-07-20  Jonathan Larmour  
587
 
588
        * src/pthread.cxx: Use isoinfra to determine presence of malloc()
589
        Define pthread_malloc() and pthread_free() as inlines
590
 
591
        * cdl/posix.cdl: Shouldn't define _POSIX_MESSAGE_PASSING at all - that
592
        happens in isoinfra.
593
 
594
2000-07-20  Nick Garnett  
595
 
596
        * cdl/posix.cdl: Added misc.cxx to compile list. Added option to
597
        define _POSIX_MESSAGE_PASSING. Added configury for utsname
598
        structure.
599
 
600
        * include/utsname.h: Added this file to define struct utsname and
601
        uname() function prototype.
602
 
603
        * include/mqueue.h: Moved definition of _POSIX_MESSAGE_PASSING to
604
        CDL.
605
 
606
        * include/limits.h: Added NGROUPS_MAX definition.
607
 
608
        * src/pthread.cxx:
609
        Added support for malloced() thread stacks.
610
        Added implementations of pthread_mutex_setprioceiling() and
611
        pthread_mutex_getprioceiling().
612
        Changed implementations of pthread_mutex_destroy(),
613
        pthread_mutex_lock() and pthread_mutex_trylock() to conform more
614
        closely to the standard.
615
        Changed pthread_key_create() to assign NULL to all valid thread
616
        slots that correspond to a newly allocated key.
617
 
618
        * src/pprivate.h: Added freestack and stackmem members to manage
619
        malloced thread stacks.
620
 
621
        * src/misc.cxx: Added this file to contain functions that do not
622
        belong in any other files. Currently contains uname() and
623
        sysconf().
624
 
625
2000-07-19  Jonathan Larmour  
626
 
627
        * src/startup.cxx: Remove unnecessary includes
628
        Use dummy object constructor to do initialization
629
 
630
        * cdl/posix.cdl:
631
        Don't need main.cxx any more
632
        Build startup.cxx into extras.o (via libextras.a)
633
 
634
        * cdl/pthread.cdl (CYGPKG_POSIX_MAIN_THREAD):
635
        Integrate with CYGPKG_LIBC_STARTUP - tell CYGPKG_LIBC_STARTUP to
636
        let pthreads set up main thread
637
 
638
        * src/pthread.cxx: Integrate with CYGPKG_LIBC_STARTUP rather than
639
        calling main() directly.
640
        Track number of threads waiting to be joined, so we can tell in
641
        pthread_exit() if this is the last thread, and therefore whether
642
        to call exit()
643
 
644
        * src/main.cxx: obsolete, removed
645
 
646
2000-07-13  Nick Garnett  
647
 
648
        * src/signal.cxx: Added ISO C compatibility functions signal() and
649
        raise().
650
 
651
2000-06-21  Nick Garnett  
652
 
653
        * src/pthread.cxx: Added for(;;) loop to end of pthread_exit().
654
        pthread_exit() is marked with the noreturn attribute, and without
655
        this some compilers generate a call to abort() here in case
656
        Cyg_Thread::exit() returns. The loop avoids this.
657
 
658
2000-06-06  Jonathan Larmour  
659
 
660
        * src/mqueue.cxx (mq_receive): Fix non-portable treatment of mode flags
661
        (mq_send):  Ditto
662
        * tests/mqueue2.c (main): Ditto
663
 
664
2000-05-24  Nick Garnett  
665
 
666
        * tests/pthread2.c: Added this program to test per-thread data
667
        handling.
668
 
669
        * tests/pthread3.c: Added this program to test execution of
670
        cancellation handler.
671
 
672
        * src/pthread.cxx: Fixed some bugs revealed by new test programs.
673
 
674
        * cdl/posix.cdl: Added two new pthread tests.
675
 
676
2000-05-22  Jonathan Larmour  
677
 
678
        * cdl/posix.cdl (CYGPKG_POSIX): Require
679
        CYGIMP_KERNEL_SCHED_SORTED_QUEUES
680
 
681
2000-05-20  Jonathan Larmour  
682
 
683
        * tests/mqueue1.c (cyg_user_start): Define correctly
684
        * tests/mqueue2.c (cyg_user_start): Likewise
685
 
686
        * src/pprivate.h (cyg_sigqueue): Make struct sigevent * arg const since
687
        it is, and it prevents warnings elsewhere
688
        * src/signal.cxx (cyg_sigqueue): ditto
689
 
690
        * tests/signal2.c: Use CYG_TEST_NA, not CYG_TEST_INFO (otherwise
691
        the test farm may fail the tests because there are no PASSes or NAs)
692
 
693
        * cdl/posix.cdl (CYGPKG_POSIX): We need errno and error codes, so
694
        require them
695
        Move some of the package implements into the components
696
        Add message queue configuration, build mqueue.cxx and the mqueue1 and
697
        mqueue2 tests
698
        Move some calculated options into isoinfra, implemented as interfaces
699
        so that unistd.h and limits.h can get the values
700
 
701
        * include/limits.h: Move _POSIX_* macros into isoinfra limits.h
702
        since they are implementation independent
703
 
704
        * src/mqueue.cxx: Add POSIX message queue implementation
705
        * tests/mqueue1.c, tests/mqueue2.c: and tests
706
 
707
2000-05-18  Nick Garnett  
708
 
709
        * src/pprivate.h:
710
        * src/pthread.cxx:
711
        * src/signal.cxx:
712
        * src/time.cxx:
713
        Added prioritization of static kernel objects.
714
 
715
2000-05-17  Nick Garnett  
716
 
717
        * src/pthread.cxx:
718
        To reduce the static memory required by this code, the
719
        pthread_info structure for a pthread is now allocated in the stack
720
        memory for that thread, and not in a static table. The table is
721
        now just an array of pointers. The per-thread data array is now
722
        also allocated onto the stack only when first required.
723
 
724
        * include/pthread.h: Removed some redundant code.
725
 
726
        * include/limits.h: Added PTHREAD_STACK_OVERHEAD to record
727
        management overhead imposed on POSIX threads stacks. This is added
728
        to the HAL minimum requirement to generate PTHREAD_STACK_MIN.
729
 
730
        * src/pprivate.h (pthread_info):
731
        * include/types.h (pthread_attr_t): Converted a number of integer
732
        state and boolean fields to bitfields.
733
 
734
        * cdl/pthread.cdl:
735
        Added requirement for CYGFUN_KERNEL_THREADS_STACK_LIMIT.
736
 
737
2000-05-16  Nick Garnett  
738
 
739
        * include/types.h: Added stacksize_valid to pthread_attr_t
740
        structure.
741
 
742
        * include/signal.h:
743
        Added SI_EXCEPT to mark any signals that were caused by an
744
        exception. Removed conditions around SIGBUS.
745
 
746
        * src/startup.cxx (cyg_posix_start):
747
        Added call to cyg_posix_exception_start().
748
 
749
        * src/signal.cxx:
750
        Rearranged cyg_deliver_signals() so that it is possible to
751
        longjmp() out of a signal handler without leaving signal handling
752
        code in an inconsistent state.
753
        Added handling of SIG_IGN in sigaction().
754
 
755
        * src/pthread.cxx: Added setting and checking of stacksize_valid.
756
 
757
        * src/pprivate.h: Added cyg_deliver_signals() as an export of
758
        signal system. Added exports from except.cxx.
759
 
760
        * src/except.cxx: Added this file to handle delivery of exceptions
761
        into the POSIX signal mechanism.
762
 
763
        * cdl/posix.cdl: Added except.cxx to compile list, added signal2
764
        to tests. Added requirement on kernel exception processing.
765
 
766
        * tests/tm_basic.cxx: Tidied up a compilation warning.
767
 
768
        * tests/signal2.c: Added this test for exception signal generation.
769
 
770
        * tests/mutex3.c: Fixed stupid bug.
771
 
772
2000-05-10  Nick Garnett  
773
 
774
        * src/pprivate.h: Added cyg_posix_clock_start() prototype.
775
 
776
        * src/startup.cxx: Added call to cyg_posix_clock_start().
777
 
778
        * src/time.cxx: Added startup routine to initialize
779
        converters. Fixed error result bug in timer_delete().
780
 
781
        * include/signal.h: Removed some configuration tests which are now
782
        done in CDL.
783
 
784
        * cdl/posix.cdl: Added configury for the signals component. Added
785
        tm_basic to tests.
786
 
787
        * tests/tm_basic.cxx:
788
        Added this POSIXized version of the tm_basic test. Note that this
789
        has not been entirely converted. While the code being tested is
790
        POSIX, the timing infrastructure remains a mish-mash of kernel,
791
        KAPI and HAL code.
792
 
793
2000-05-04  Nick Garnett  
794
 
795
        * src/time.cxx:
796
        Many changes to implement the delivery of signals on timer expiry.
797
        Also added timer_delete().
798
 
799
        * src/signal.cxx:
800
        cyg_sigqueue() and cyg_deliver_signals() may now only be called
801
        from within the context of a POSIX thread, either from an API call
802
        or an ASR.
803
        cyg_deliver_signals() can now cope with a signal that has
804
        SA_SIGINFO set but no signals queued. It also determines
805
        dynamically whether to lock the signal_mutex.
806
        cyg_deliver_signals() is no longer called implicitly from
807
        cyg_sigqueue() - so a number of expicit calls have been added.
808
 
809
        * src/sched.cxx:
810
        Added this file to implement scheduling API.
811
 
812
        * src/pthread.cxx:
813
        Moved priority translation macros to pprivate.h.
814
        Removed errno handling, now done in isoinfra package.
815
        Added iterative calls to per-thread data destructors.
816
 
817
        * src/pprivate.h:
818
        Removed error field from pthread_info structure.
819
        Moved priority translation macros here.
820
        Removed prototype for cyg_deliver_signals().
821
        Added prototype for cyg_posix_timer_asr().
822
 
823
        * include/time.h: Added timer_delete() which was mysteriously
824
        omitted.
825
 
826
        * cdl/posix.cdl: Added sched.cxx to compile list and timer1.c to
827
        tests.
828
 
829
        * tests/signal1.c:
830
        * tests/pthread1.c:
831
        Fixed bug in use of stack sizes.
832
 
833
        * tests/timer1.c:
834
        Added test for use of timers.
835
 
836
2000-05-02  Jonathan Larmour  
837
 
838
        * include/sched.h: No longer needed - just use the default definition
839
        in isoinfra
840
 
841
        * include/errno.h: No longer needed - errno provision now comes from
842
        CYGPKG_ERROR
843
 
844
        * include/sys/types.h: Moved to include/types.h
845
 
846
        * cdl/posix.cdl, cdl/pthread.cdl: Put include files in cyg/posix, and
847
        configure CYGPKG_ISOINFRA to include the appropriate headers
848
 
849
        * include/semaphore.h: Don't need to check kernel - including
850
        pkgconf/kernel.h would already fail
851
        Give SEM_FAILED a type so casting behaves in C++
852
 
853
        * include/signal.h: This uses pid_t etc., so include 
854
        Add signal() and raise() prototypes (to allow libc compilation, even
855
        though they aren't implemented yet)
856
 
857
        * include/time.h: Remove unnecessary includes. Move clockid_t and
858
        timer_t definitions here from sys/types.h since this is where the
859
        standard says they must live.
860
 
861
        * src/pprivate.h: Include signal.h and limits.h since their contents
862
        are used later in the file.
863
 
864
2000-04-28  Nick Garnett  
865
 
866
        * src/signal.cxx:
867
        Added implementations of alarm(), pause() and sleep().
868
        Modified cyg_sigqueue() so that it could be called from an ASR.
869
        Added cyg_posix_signal_asr() to do signal processing in ASRs.
870
        Miscellaneous bug fixes.
871
 
872
        * src/pthread.cxx:
873
        Added pthread_count to count number of threads created.
874
        Added call to signal ASR function in main ASR.
875
        Added cyg_posix_pthread_release_thread() to seek out and kick a
876
        thread to which a given set of signals may be delivered.
877
 
878
        * src/pprivate.h:
879
        Added some more functions that are shared between POSIX
880
        subsystems.
881
 
882
        * include/signal.h:
883
        Added alarm(), pause() and sleep() prototypes.
884
 
885
        * tests/signal1.c: Added this test for various aspects of signal
886
        handling.
887
 
888
        * cdl/posix.cdl: Added signal1 test.
889
 
890
2000-04-20  Nick Garnett  
891
 
892
        * src/signal.cxx: Added this file to contain signal handling code.
893
 
894
        * src/time.cxx: Made tick<->timespec converters exported to
895
        rest of POSIX subsystem. Enabled interface to signal mechanism for
896
        notifying timer expiration.
897
 
898
        * src/pthread.cxx:
899
        Made pthread_mutex exported to rest of POSIX subsystem.
900
        Exported pthread_info_id().
901
        Added thread init and destroy functions for signal subsystem.
902
 
903
        * src/startup.cxx: Added call to cyg_posix_signal_start().
904
 
905
        * src/pprivate.h: Added signal handling fields support to
906
        pthread_info structure. Added extra internal interfaces to support
907
        signal handling code.
908
 
909
        * include/signal.h: Added _how_ argument values for the sigmask
910
        functions.
911
 
912
        * cdl/posix.cdl: Added signal.cxx to compile list.
913
 
914
2000-04-13  Nick Garnett  
915
 
916
        * include/time.h:
917
        * src/time.cxx:
918
        Added implementation of clock and timer functions. These are
919
        currently untested since they need working signals.
920
 
921
2000-04-12  Nick Garnett  
922
 
923
        * src/pprivate.h: Added cancellation support fields to
924
        pthread_info structure. Made pthread_self_info() exported.
925
 
926
        * include/semaphore.h: Added SEM_FAILED plus misc. tidies.
927
 
928
        * include/pthread.h: Added PTHREAD_CANCELED.
929
 
930
        * include/errno.h: Fixed cyg_pthread_errno_p() return type.
931
 
932
        * src/pthread.cxx:
933
        Added pthread_reap() to clean up exited threads.
934
        Added support for cancellation.
935
        Added cyg_posix_errno_p().
936
 
937
        * src/time.cxx:
938
        Added this file to implement time functionality. At present only
939
        nanosleep() is actually implemented.
940
 
941
        * src/sem.cxx:
942
        Added this file to implement semaphore functionality.
943
 
944
        * cdl/pthread.cdl:
945
        Added some extra configuration requirements.
946
 
947
        * cdl/posix.cdl:
948
        Added some more files to compile.
949
        Added semaphore configuration.
950
 
951
        * tests/mutex3.c:
952
        Added this test program. This is actually a POSIXized version of
953
        Hugo's splendid kernel test of the same name. It exercises quite a
954
        lot of the pthread infrastructure and is thus a good test to run.
955
 
956
        * tests/pthread1.c:
957
        Added proper comment headers and added full testing stuff.
958
 
959
2000-04-10  Nick Garnett  
960
 
961
        * src/pprivate.h:
962
        * src/pthread.cxx:
963
        Added per-thread data support.
964
 
965
2000-04-06  Nick Garnett  
966
 
967
        * src/pthread.cxx:
968
        Filled in implementations of lots of functions.
969
 
970
        * src/main.cxx:
971
        Added this file to contain a default main. This is currenly just a
972
        duplicate of the same file from the C library. Work is needed to
973
        combine these.
974
 
975
        * include/sys/types.h:
976
        Modified pthread_mutex_t to conform to kernel structure.
977
 
978
        * cdl/pthread.cdl:
979
        Added support for main thread.
980
 
981
        * cdl/posix.cdl:
982
        Added main.cxx to compile list.
983
 
984
2000-03-31  Nick Garnett  
985
 
986
        * cdl/pthread.cdl:
987
        * cdl/posix.cdl:
988
        Added CDL files to configure POSIX subsystem.
989
 
990
        * src/pprivate.h:
991
        * src/pthread.cxx:
992
        * src/startup.cxx:
993
        Added these files to begin implementation of POSIX package.
994
 
995
        * include/pthread.h:
996
        * include/sched.h:
997
        * include/signal.h:
998
        * include/time.h:
999
        * include/sys/types.h:
1000
        Many changes needed by implementation work.
1001
 
1002
        * include/limits.h:
1003
        * include/errno.h:
1004
        Added these header files.
1005
 
1006
2000-03-24  Nick Garnett  
1007
 
1008
        * include/sys/types.h:
1009
        * include/time.h:
1010
        * include/sched.h:
1011
        * include/pthread.h:
1012
        * include/signal.h:
1013
        * include/semaphore.h:
1014
        * include/mqueue.h:
1015
        Roughed out (most of) the set of POSIX headers for the
1016
        functionality we are currently going to support. These files are
1017
        currently neither fully standard conformant nor implementation
1018
        ready. Much work is still needed to make them so. Watch this
1019
        space.
1020
 
1021
#####ECOSGPLCOPYRIGHTBEGIN####
1022
## -------------------------------------------
1023
## This file is part of eCos, the Embedded Configurable Operating System.
1024
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
1025
##
1026
## eCos is free software; you can redistribute it and/or modify it under
1027
## the terms of the GNU General Public License as published by the Free
1028
## Software Foundation; either version 2 or (at your option) any later version.
1029
##
1030
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
1031
## WARRANTY; without even the implied warranty of MERCHANTABILITY or
1032
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
1033
## for more details.
1034
##
1035
## You should have received a copy of the GNU General Public License along
1036
## with eCos; if not, write to the Free Software Foundation, Inc.,
1037
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
1038
##
1039
## As a special exception, if other files instantiate templates or use macros
1040
## or inline functions from this file, or you compile this file and link it
1041
## with other works to produce a work based on this file, this file does not
1042
## by itself cause the resulting work to be covered by the GNU General Public
1043
## License. However the source code for this file must still be made available
1044
## in accordance with section (3) of the GNU General Public License.
1045
##
1046
## This exception does not invalidate any other reasons why a work based on
1047
## this file might be covered by the GNU General Public License.
1048
##
1049
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
1050
## at http://sources.redhat.com/ecos/ecos-license/
1051
## -------------------------------------------
1052
#####ECOSGPLCOPYRIGHTEND####

powered by: WebSVN 2.1.0

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