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####
|