source: rtems/cpukit/score/ChangeLog @ 41c4785

4.104.114.84.95
Last change on this file since 41c4785 was 41c4785, checked in by Joel Sherrill <joel.sherrill@…>, on Aug 7, 2002 at 3:03:52 PM

2002-08-07 Chris Johns <ccj@…>

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