source: rtems/c/src/exec/score/ChangeLog @ 9b49454

4.104.114.84.95
Last change on this file since 9b49454 was 9b49454, checked in by Joel Sherrill <joel.sherrill@…>, on 07/19/02 at 16:31:41

2002-07-19 Joel Sherrill <joel@…>

  • include/rtems/score/apimutex.h (_API_Mutex_Lock): Added missing _ISR_Disable.
  • Property mode set to 100644
File size: 16.9 KB
Line 
12002-07-19      Joel Sherrill <joel@OARcorp.com>
2
3        * include/rtems/score/apimutex.h (_API_Mutex_Lock): Added missing
4        _ISR_Disable.
5
62002-07-16      Joel Sherrill <joel@OARcorp.com>
7
8        * macros/rtems/score/object.inl: Corrected typos in
9        _Objects_Open, _Objects_Close, and _Objects_Namespace_remove.
10
112002-07-05      Joel Sherrill <joel@OARcorp.com>
12
13        * macros/rtems/score/object.inl: Corrected implementation of
14        _Objects_Open, _Objects_Close, and _Objects_Namespace_remove
15        to be consistent with the inline implementation.
16
172002-07-01    Joel Sherrill <joel@OARcorp.com>
18
19        * Mega patch merge to change the format of the object IDs to
20        loosen the dependency between the SCORE and the various APIs.
21        There was considerable work to simplify the object name management
22        and it appears that the name_table field is no longer needed.
23        This patch also includes the addition of the internal mutex
24        which is currently only used to protect some types of allocation
25        and deallocation.  This significantly can reduce context
26        switch latency under certain circumstances.  In particular,
27        some heap/region operations were O(n) and had dispatching
28        disabled.  This should help enormously.  With this merge,
29        the patch is not as clean as it should be.  In particular,
30        the documentation has not been modified to reflect the new object
31        ID layout, the IDs in the test screens are not updated, and
32        _Objects_Get_information needs to be a real routine not inlined.
33        As part of this patch a lot of MP code for thread/proxy blocking
34        was made conditional and cleaned up.
35        * include/Makefile.am, include/rtems/score/coremsg.h,
36        include/rtems/score/coremutex.h, include/rtems/score/coresem.h,
37        include/rtems/score/object.h, include/rtems/score/threadq.h,
38        inline/rtems/score/object.inl, inline/rtems/score/thread.inl,
39        macros/rtems/score/object.inl, src/Makefile.am, src/coremsg.c,
40        src/coremutex.c, src/coresem.c, src/mpci.c,
41        src/objectcomparenameraw.c, src/objectextendinformation.c,
42        src/objectinitializeinformation.c, src/objectnametoid.c,
43        src/thread.c, src/threadclose.c, src/threadget.c, src/threadq.c,
44        src/threadqextractwithproxy.c: Modified as part of above.
45        * include/rtems/score/apimutex.h, src/objectgetnoprotection.c: New
46        files.
47
482001-05-17      Joel Sherrill <joel@OARcorp.com>
49
50        * macros/rtems/score/thread..inl: Implemented missing routines
51        for new libc reentrancy support.
52
532002-05-15      Chris Johns <ccj@acm.org>
54
55        * include/rtems/score/thread.h, inline/rtems/score/thread.inl,
56        src/threaddispatch.c, src/threadinitialize.c:
57        Move the C library re-enterrant support directly into
58        the thread dispatch code. RTEMS needs libc and so requiring
59        libc to use a user extension with its overhead is not the best
60        solution. This patch lowers the overhead to 2 pointer moves.
61
622002-05-03      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
63
64        * include/Makefile.am: Work-around to autoconf-2.53 adding PACKAGE_*
65        to autoheaders - sed out *PACKAGE* from cpuopts-tmp.h.
66
672001-05-14      Till Straumann <strauman@slac.stanford.edu>
68
69        * src/threaddispatch.c, src/threadhandler.c: Per PR211 fix
70        saving/restoring floating point context.  The fpsave and fprestore
71        routines are only used in a executing context which _is_ fp and hence
72        has the FPU enabled. The current behavior required the FPU always to
73        be on which is very dangerous if lazy context switching is used. 
74        [Joel Note: Some ports explicitly enabled the FPU in the FP save and
75        restore routines to avoid this.]
76
77        The patch also makes sure (on powerpc only) that the FPU is disabled
78        for integer tasks. Note that this is crucial if deferred fp context
79        switching is used. Otherwise, fp context corruption may go undetected!
80        Also note that even tasks which merely push/pop FP registers to/from
81        the stack without modifying them still MUST be FP tasks - otherwise
82        (if lazy FP context switching is used), FP register corruption (of
83        other, FP, tasks may occur)!
84
85        Furthermore, (on PPC) by default, lazy FP context save/restore
86        is _disabled_.
87
882001-04-26      Joel Sherrill <joel@OARcorp.com>
89
90        * src/objectcomparenamestring.c: Fix typos.
91 
922001-04-26      Joel Sherrill <joel@OARcorp.com>
93
94        * include/rtems/score/object.h, inline/rtems/score/object.inl,
95        src/objectcomparenamestring.c: Address PR81 that
96        reworked POSIX message queues to add a descriptor separate from
97        the underlying message queue.  This allows non-blocking to follow
98        the "open" not the underlying queue.   As part of debugging this
99        it became clear that _Objects_Compare_name_string was broken
100        and a simple version using strncmp() was substituted.
101 
1022002-04-18      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
103
104        * include/rtems/system.h: Remove targopts.h.
105
1062002-04-17      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
107
108        * include/rtems/system.h: Add the sparc to the target supporting
109        multlibs.
110
1112002-04-16      Chris Johns <ccj@acm.org>
112
113        * src/threadinitialize.c: Per PR181, clear the array of user extension
114        pointers. This lets user extensions that have hooked the switch handler
115        know if a task has been processed by the user extension before. If a
116        user extension is created after a task is started it may not know it.
117
1182002-04-12      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
119
120        * include/rtems/system.h: Add i386 to multilib-able targets.
121
1222001-04-11      Joel Sherrill <joel@OARcorp.com>
123
124       
125        * macros/rtems/score/userext.inl: Now works after merging patch for
126        functionality requested in PR174.
127        * inline/rtems/score/userext.inl: Added a comment explaining the
128        order in which routines appear since it is not the obvious order.
129 
1302002-04-08      Chris Johns <ccj@acm.org>
131
132        * Per PR141 and PR174, make task switch extension its own list and
133        fix all odd problems introduced by providing macro version.
134        * inline/rtems/score/userext.inl: Fix.
135
1362001-04-08      Joel Sherrill <joel@OARcorp.com>
137
138        * macros/rtems/score/object.inl: Corrected arguments.
139 
1402001-04-08      Joel Sherrill <joel@OARcorp.com>
141
142        * macros/rtems/score/userext.inl: Updated to reflect modifications
143        to inline version from PR142.
144        * inline/rtems/score/userext.inl: Cleanup as side-effect of above.
145 
1462002-04-08      Chris Johns <ccj@acm.org>
147
148        * Per PR142, make task switch extension its own list.
149        * include/rtems/score/userext.h: Reflect above by adding
150        User_extensions_Switch_control and adding it to User_extenions_Control.
151        * inline/rtems/score/userext.inl: Allocate all memory in one chunk
152        to minimize overhead.  Address processing dedicated switch chain.
153
1542002-04-08      Chris Johns <ccj@acm.org>
155
156        * Per PR142, make task switch extension its own list.
157        * include/rtems/score/userext.h: Reflect above by adding
158        User_extensions_Switch_control and adding it to User_extenions_Control.
159        * inline/rtems/score/userext.inl: Allocate all memory in one chunk
160        to minimize overhead.  Address processing dedicated switch chain.
161
1622002-03-27      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
163
164        * cpu/Makefile.am: Remove AUTOMAKE_OPTIONS.
165        * src/Makefile.am: Remove AUTOMAKE_OPTIONS.
166        * Makefile.am: Remove AUTOMAKE_OPTIONS.
167        * include/Makefile.am: Remove AUTOMAKE_OPTIONS.
168        * inline/Makefile.am: Remove AUTOMAKE_OPTIONS.
169        * macros/Makefile.am: Remove AUTOMAKE_OPTIONS.
170
1712002-01-29      Joel Sherrill <joel@OARcorp.com>
172
173        * include/rtems/score/watchdog.h: Added WATCHDOG_MAXIMUM_INTERVAL.
174
1752002-01-19      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
176
177        * include/rtems/system.h: Fix typo in yesterday's change:
178        RTEMS_MULTILIBS.
179
1802001-01-18      Joel Sherrill <joel@OARcorp.com>
181
182        * include/rtems/system.h: Only include cpuopts.h when building a
183        multilib configuration.  Some ports still need targopts.h but this
184        small modification lets those ports work non-multilib while
185        fixing being fixed for multilib.
186       
1872002-01-04      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
188
189        * include/rtems/seterr.h: Add do {..} while (0) in defines.
190        Rename set_errno_and_return_minus_one into
191        rtems_set_errno_and_return_minus_one.
192
1932001-12-19      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
194
195        * inline/rtems/score/object.inl, macros/rtems/score/object.inl: Add
196        add casts to Objects_Id in _Objects_Build_ids to avoid implicit
197        typecasts from enum to int16 on bit16 targets (here: h8300).
198
1992001-12-19      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
200
201        * src/Makefile.am: Add multilib support.
202
2032001-11-28      Joel Sherrill <joel@OARcorp.com>,
204
205        This was tracked as PR91.
206        * include/rtems/score/isr.h, inline/rtems/score/isr.inl,
207        macros/rtems/score/isr.inl: Modified to allow any port to provide
208        its own implementation of the macro _ISR_Is_in_progress.  If the
209        port overrides this macro, it must provide a non-inlined function
210        implementation.
211
2122001-11-20      Joel Sherrill <joel@OARcorp.com>
213
214        * src/threadhandler.c: When __USE__MAIN__ is defined by the toolset,
215        invoke the global constructors via __main.  Reported as tested by
216        Alexandra Kossovsky <sasha@oktet.ru> and  Victor V. Vengerov
217        <vvv@oktet.ru> in conjunction with a new set of tool RPMs
218        (gcc2.95.3newlib1.9.0-3).  This was tracked as GNATS PR tools/84.
219
2202001-11-07      Joel Sherrill <joel@OARcorp.com>
221
222        Reported by Todor.Todorov@barco.com and tracked as PR36.
223        * include/rtems/score/object.h: Added prototype for
224        _Objects_Get_by_index().
225        * src/objectget.c, src/objectgetisr.c: Corrected procedure for
226        getting index from Id so it is correct and optimal for both single
227        and multiprocessor configurations.
228
2292001-10-22      Joel Sherrill <joel@OARcorp.com>
230
231        * src/threadhandler.c: Use __USE_INIT_FINI__ since USE_INIT_FINI
232        pollutes the application namespace.
233
2342001-10-16      Joel Sherrill <joel@OARcorp.com>
235
236        * .cvsignore: Add stamp-h.in.
237
2382001-10-16      Joel Sherrill <joel@OARcorp.com>
239
240        * include/Makefile.am: Fixed path to cpuopts-tmp.h.
241
2422001-10-16      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
243
244        * include/rtems/Makefile.am: Remove.
245        * include/rtems/Makefile.am: Remove.
246        * include/Makefile.am: Handle subdirs, require automake-1.5.
247        * macros/rtems/Makefile.am: Remove.
248        * macros/rtems/score/Makefile.am: Remove.
249        * macros/Makefile.am: Handle subdirs, require automake-1.5.
250        * inline/rtems/Makefile.am: Remove.
251        * inline/rtems/score/Makefile.am: Remove.
252        * inline/Makefile.am: Handle subdirs, require automake-1.5.
253        * Makefile.am: require automake-1.5
254
2552001-09-28      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
256
257        * include/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
258        * include/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
259        * inline/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
260        * macros/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
261
2622001-09-27      Eric Norum <eric.norum@usask.ca>
263
264        * src/threadhandler.c: Now process C++ global constructors
265        (_init) as part of the first task execution not in BSP space.
266        This depends on the toolset defining USE_INIT_FINI so you
267        have to have the right toolset version.
268
2692001-09-23      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
270
271        * include/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
272        * include/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
273        * inline/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
274        * macros/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
275
2762001-08-30      Joel Sherrill <joel@OARcorp.com>
277
278        *  src/coremutex.c, src/coremutexseize.c, src/coremutexsurrender.c,
279        inline/rtems/score/coremutex.inl: The per thread field resource_count
280        should only be manipulated when a mutex is priority ceiling or
281        priority inherit.  This was reported by Chris Johns <ccj@acm.org>
282        who also noticed that the use of switches for all disciplines
283        generated less efficient code than using explicit tests for the one
284        or two cases we were really interested in.  Further review of his
285        modifications made it apparent that the "isa" methods to test mutex
286        discipline were not being used so this modification was swept into
287        the code as well.
288
2892001-08-30      Joel Sherrill <joel@OARcorp.com>
290
291        * src/coremutexseize.c: Add missing code for proper handling
292        of nesting acquisitions.  This only impacts building with
293        inlines disabled on the source with the "fast mutex" optimizations.
294        This was post the 4.5 branch and did not impact released versions.
295
2962001-08-16      Joel Sherrill <joel@OARcorp.com>
297
298        * src/coremutexsurrender.c: Use holder thread not executing
299        thread because even though they may and often are the same
300        it is not guaranteed unless the proper attribute is set.
301
3022001-08-16      Joel Sherrill <joel@OARcorp.com>
303
304        * include/rtems/score/coremsg.h, src/coremsgsubmit.c: Add a new
305        return status to account for blocking sends.  Otherwise, the
306        caller will think that the returned message status will have
307        the ultimate results of the operation.  If the send times out,
308        the final status will be in the return_code of the thread.
309
3102001-08-09      Joel Sherrill <joel@OARcorp.com>
311
312        * include/rtems/score/coremsg.h, inline/rtems/score/coremsg.inl,
313        src/coremsgsubmit.c: Unblocking message queue operations should
314        NOT use _Thread_Executing for return status since it is permissible
315        to invoke message send operations from an ISR.  This was reported
316        by Suvrat Gupta <suvrat@utstar.com>.
317
3182000-05-25      Sergei Organov <osv@javad.ru>
319
320        * macros/rtems/score/coresem.inl, inline/rtems/score/coresem.inl:
321        Cut and paste problem incorrectly enabled interrupts twice with
322        the first time being too early.
323
3242001-05-09      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
325
326        * include/rtems/score/.cvsignore: Add stamp-h, cpuopts.h,
327        cpuopts.h.in, cpuopts-tmp.h.
328
3292001-02-03      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
330
331        * include/rtems/Makefile.am, include/rtems/score/Makefile.am,
332        inline/rtems/score/Makefile.am, macros/rtems/score/Makefile.am
333        Apply include_*HEADERS instead of H_FILES.
334
3352001-01-29      Joel Sherrill <joel@OARcorp.com>
336
337        * src/objectextendinformation.c: Added include of string.h to
338        eliminate warning.
339
3402001-01-08      Joel Sherrill <joel@OARcorp.com>
341
342        * src/threadinitialize.c: Fix my bad hack of Ralf's fp_area
343        warning removal patch. :(
344
3452001-01-08      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
346
347        * src/threadinitialize.c: Removed warning.
348
3492001-01-03      Joel Sherrill <joel@OARcorp.com>
350
351        * src/isr.c: Modify to properly dereference _ISR_Vector_table
352        now that it is dynamically allocated.
353
3542000-12-19      Joel Sherrill <joel@OARcorp.com>
355
356        * src/isr.c: Allocate the _ISR_Vector_table all the time not just when
357        we are allocating an interrupt stack.
358
3592000-12-13      Joel Sherrill <joel@OARcorp.com>
360
361        * include/rtems/score/isr.h, src/isr.c: Allocate it from the
362        workspace rather than explicitly declaring it.  This allows
363        the size to be a non-constant from the perspective of score/cpu.
364
3652000-12-01      Joel Sherrill <joel@OARcorp.com>
366
367        * macros/rtems/score/coresem.inl: Removed comments since convention
368        calls for comments to be in inline versin.
369        * macros/rtems/score/object.inl (Objects_Get_local_object): Fixed
370        style to use _ prefix on variable names and use parentheses.
371        * macros/rtems/score/object.inl (_Objects_Namespace_remove): Added.
372
3732000-11-30      Joel Sherrill <joel@OARcorp.com>
374
375        * General effort to make things compile with macros not inlines
376        * inline/rtems/score/coremutex.inl: Added comment indicating
377        for macros there is another copy of
378        _CORE_mutex_Seize_interrupt_trylock() in src/coremutexseize.c.
379        * src/coremutexseize.c: Added body of
380        _CORE_mutex_Seize_interrupt_trylock() for macro case.
381        * macros/rtems/score/coremutex.inl: Added prototype for
382        _CORE_mutex_Seize_interrupt_trylock() since there is a real
383        body when macros are enabled.
384        * macros/rtems/score/coresem.inl: Added macro implementation of
385        _CORE_semaphore_Seize_isr_disable.
386        * macros/score/Makefile.am: Fixed typos.
387        * rtems/score/address.inl: Correct macro implementation of
388        _Addresses_Is_aligned() so it would compile.
389        * macros/rtems/score/coremsg.inl: Added closing parentheses.
390       
3912000-11-28      Chris Johns <ccj@acm.org>
392
393        * src/heapallocate.c: Do not allow the size to overflow when
394        adjusting it.  A test allocated a stack of -1 (~0). This
395        actually resulted in a stack being allocated but with a
396        size of 0xb. The allocator did not test the size to see if
397        it rolled through 0 and so allowed the allocation to happen, the
398        thread to get created. The task crashed as you would expect.
399
4002000-11-02      Joel Sherrill <joel@OARcorp.com>
401
402        * include/rtems/system.h: Use proper conditional (RTEMS_POSIX_API)
403        so prototypes for POSIX_MP_NOT_IMPLEMENTED(), POSIX_NOT_IMPLEMENTED(),
404        POSIX_BOTTOM_REACHED() are actually included.
405
4062000-11-02      Joel Sherrill <joel@OARcorp.com>
407
408        * include/rtems/system.h: Add prototypes for POSIX_MP_NOT_IMPLEMENTED(),
409        POSIX_NOT_IMPLEMENTED(), POSIX_BOTTOM_REACHED() removed from newlib.
410
4112000-10-18      Nick Simon <Nick.SIMON@syntegra.bt.co.uk>
412
413        * src/heapgetinfo.c, include/rtems/score/heap.h, src/Makefile.am:
414        Added _Heap_Get_information() and information control block.
415        * src/heapgetinfo.c: New file.
416
4172000-09-25      Joel Sherrill <joel@OARcorp.com>
418
419        * rtems/system.h: Switched a29k and hppa1.1 to using cpuopts.h not
420        targopts.h to reduce dependency on BSP.
421
4222000-09-20      Joel Sherrill <joel@OARcorp.com>
423
424        * src/objectgetbyindex.c: Do not enable dispatching on an
425        error path it was not disabled on.
426
4272000-09-04      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
428
429        * src/Makefile.am: Include compile.am.
430
4312000-08-30      Joel Sherrill <joel@OARcorp.com>
432
433        * Many files: Moved posix/include/rtems/posix/seterr.h to
434        score/include/rtems/seterr.h so it would be available within
435        all APIs.
436
4372000-08-17      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
438
439        * include/rtems/system.h: Include cpuopts.h for __i386__.
440
4412000-08-10      Joel Sherrill <joel@OARcorp.com>
442
443        * ChangeLog: New file.
Note: See TracBrowser for help on using the repository browser.