source: rtems/c/src/exec/score/ChangeLog @ 18c19a7

4.104.114.84.95
Last change on this file since 18c19a7 was 18c19a7, checked in by Joel Sherrill <joel.sherrill@…>, on 07/16/02 at 22:22:15

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

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