source: rtems/cpukit/score/ChangeLog @ b041968

4.104.114.84.95
Last change on this file since b041968 was b041968, checked in by Joel Sherrill <joel.sherrill@…>, on 10/31/02 at 20:09:49

2002-10-31 Joel Sherrill <joel@…>

  • src/heapgetinfo.c: Fixed comment.
  • src/mpci.c: Removed warning.
  • Property mode set to 100644
File size: 17.8 KB
RevLine 
[b041968]12002-10-31      Joel Sherrill <joel@OARcorp.com>
2
3        * src/heapgetinfo.c: Fixed comment.
4        * src/mpci.c: Removed warning.
5
[78f6323]62002-10-28      Joel Sherrill <joel@OARcorp.com>
7
8        * src/threadhandler.c: Prototype _init() and _main() if they are needed
9        to avoid a warning.
10
[a50b011f]112002-08-14      Joel Sherrill <joel@OARcorp.com>
12
13        * macros/rtems/score/coremsg.inl: Add <string.h> to remove warning.
14        * src/threadidlebody.c: Add return 0 to avoid warning.
15
[41c4785]162002-08-07      Chris Johns <ccj@acm.org>
17
18        * src/coretodset.c: Correct calculation of ticks until next section
19        boundary.  It was incorrectly based upon current time not the
20        time that is being set.
21
[35fc54b1]222002-07-31      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
23
24        * src/Makefile.am: Build into libscore.a.
25
[323845bd]262002-07-22      Joel Sherrill <joel@OARcorp.com>
27
28        * include/rtems/score/apimutex.h (_API_Mutex_Lock): Per PR253
29        add the missing _ISR_Disable.  This fix was already applied to
30        the old location (c/src/exec/score/...).
31
[38ae496e]322002-07-22      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
33
34        * src/Makefile.am: Use .$(OBJEXT) instead of .o.
35
[18c19a7]362002-07-16      Joel Sherrill <joel@OARcorp.com>
37
38        * macros/rtems/score/object.inl: Corrected typos in
39        _Objects_Open, _Objects_Close, and _Objects_Namespace_remove.
40
[e90ff51f]412002-07-05      Joel Sherrill <joel@OARcorp.com>
42
43        * macros/rtems/score/object.inl: Corrected implementation of
44        _Objects_Open, _Objects_Close, and _Objects_Namespace_remove
45        to be consistent with the inline implementation.
46
[ef9505a9]472002-07-01    Joel Sherrill <joel@OARcorp.com>
48
49        * Mega patch merge to change the format of the object IDs to
50        loosen the dependency between the SCORE and the various APIs.
51        There was considerable work to simplify the object name management
52        and it appears that the name_table field is no longer needed.
53        This patch also includes the addition of the internal mutex
54        which is currently only used to protect some types of allocation
55        and deallocation.  This significantly can reduce context
56        switch latency under certain circumstances.  In particular,
57        some heap/region operations were O(n) and had dispatching
58        disabled.  This should help enormously.  With this merge,
59        the patch is not as clean as it should be.  In particular,
60        the documentation has not been modified to reflect the new object
61        ID layout, the IDs in the test screens are not updated, and
62        _Objects_Get_information needs to be a real routine not inlined.
63        As part of this patch a lot of MP code for thread/proxy blocking
64        was made conditional and cleaned up.
65        * include/Makefile.am, include/rtems/score/coremsg.h,
66        include/rtems/score/coremutex.h, include/rtems/score/coresem.h,
67        include/rtems/score/object.h, include/rtems/score/threadq.h,
68        inline/rtems/score/object.inl, inline/rtems/score/thread.inl,
69        macros/rtems/score/object.inl, src/Makefile.am, src/coremsg.c,
70        src/coremutex.c, src/coresem.c, src/mpci.c,
71        src/objectcomparenameraw.c, src/objectextendinformation.c,
72        src/objectinitializeinformation.c, src/objectnametoid.c,
73        src/thread.c, src/threadclose.c, src/threadget.c, src/threadq.c,
74        src/threadqextractwithproxy.c: Modified as part of above.
75        * include/rtems/score/apimutex.h, src/objectgetnoprotection.c: New
76        files.
77
[1b074a1]782001-05-17      Joel Sherrill <joel@OARcorp.com>
79
80        * macros/rtems/score/thread..inl: Implemented missing routines
81        for new libc reentrancy support.
82
[0df8293e]832002-05-15      Chris Johns <ccj@acm.org>
84
85        * include/rtems/score/thread.h, inline/rtems/score/thread.inl,
86        src/threaddispatch.c, src/threadinitialize.c:
87        Move the C library re-enterrant support directly into
88        the thread dispatch code. RTEMS needs libc and so requiring
89        libc to use a user extension with its overhead is not the best
90        solution. This patch lowers the overhead to 2 pointer moves.
91
[bd9265d]922002-05-03      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
93
94        * include/Makefile.am: Work-around to autoconf-2.53 adding PACKAGE_*
95        to autoheaders - sed out *PACKAGE* from cpuopts-tmp.h.
96
[48f89683]972001-05-14      Till Straumann <strauman@slac.stanford.edu>
98
99        * src/threaddispatch.c, src/threadhandler.c: Per PR211 fix
100        saving/restoring floating point context.  The fpsave and fprestore
101        routines are only used in a executing context which _is_ fp and hence
102        has the FPU enabled. The current behavior required the FPU always to
103        be on which is very dangerous if lazy context switching is used. 
104        [Joel Note: Some ports explicitly enabled the FPU in the FP save and
105        restore routines to avoid this.]
106
107        The patch also makes sure (on powerpc only) that the FPU is disabled
108        for integer tasks. Note that this is crucial if deferred fp context
109        switching is used. Otherwise, fp context corruption may go undetected!
110        Also note that even tasks which merely push/pop FP registers to/from
111        the stack without modifying them still MUST be FP tasks - otherwise
112        (if lazy FP context switching is used), FP register corruption (of
113        other, FP, tasks may occur)!
114
115        Furthermore, (on PPC) by default, lazy FP context save/restore
116        is _disabled_.
117
[bf99393f]1182001-04-26      Joel Sherrill <joel@OARcorp.com>
119
120        * src/objectcomparenamestring.c: Fix typos.
121 
[2b454fa]1222001-04-26      Joel Sherrill <joel@OARcorp.com>
123
124        * include/rtems/score/object.h, inline/rtems/score/object.inl,
125        src/objectcomparenamestring.c: Address PR81 that
126        reworked POSIX message queues to add a descriptor separate from
127        the underlying message queue.  This allows non-blocking to follow
128        the "open" not the underlying queue.   As part of debugging this
129        it became clear that _Objects_Compare_name_string was broken
130        and a simple version using strncmp() was substituted.
131 
[9779f3d]1322002-04-18      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
133
134        * include/rtems/system.h: Remove targopts.h.
135
[cf80584]1362002-04-17      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
137
138        * include/rtems/system.h: Add the sparc to the target supporting
139        multlibs.
140
[f918e74]1412002-04-16      Chris Johns <ccj@acm.org>
142
143        * src/threadinitialize.c: Per PR181, clear the array of user extension
144        pointers. This lets user extensions that have hooked the switch handler
145        know if a task has been processed by the user extension before. If a
146        user extension is created after a task is started it may not know it.
147
[231fccb]1482002-04-12      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
149
150        * include/rtems/system.h: Add i386 to multilib-able targets.
151
[ed11413b]1522001-04-11      Joel Sherrill <joel@OARcorp.com>
153
154       
155        * macros/rtems/score/userext.inl: Now works after merging patch for
156        functionality requested in PR174.
157        * inline/rtems/score/userext.inl: Added a comment explaining the
158        order in which routines appear since it is not the obvious order.
159 
[02a200d]1602002-04-08      Chris Johns <ccj@acm.org>
161
162        * Per PR141 and PR174, make task switch extension its own list and
163        fix all odd problems introduced by providing macro version.
164        * inline/rtems/score/userext.inl: Fix.
165
[ab377aa]1662001-04-08      Joel Sherrill <joel@OARcorp.com>
167
168        * macros/rtems/score/object.inl: Corrected arguments.
169 
[aadb6b0]1702001-04-08      Joel Sherrill <joel@OARcorp.com>
171
172        * macros/rtems/score/userext.inl: Updated to reflect modifications
173        to inline version from PR142.
174        * inline/rtems/score/userext.inl: Cleanup as side-effect of above.
175 
[7af623bf]1762002-04-08      Chris Johns <ccj@acm.org>
177
178        * Per PR142, make task switch extension its own list.
179        * include/rtems/score/userext.h: Reflect above by adding
180        User_extensions_Switch_control and adding it to User_extenions_Control.
181        * inline/rtems/score/userext.inl: Allocate all memory in one chunk
182        to minimize overhead.  Address processing dedicated switch chain.
183
[e2c488a4]1842002-04-08      Chris Johns <ccj@acm.org>
185
186        * Per PR142, make task switch extension its own list.
187        * include/rtems/score/userext.h: Reflect above by adding
188        User_extensions_Switch_control and adding it to User_extenions_Control.
189        * inline/rtems/score/userext.inl: Allocate all memory in one chunk
190        to minimize overhead.  Address processing dedicated switch chain.
191
[c43484b]1922002-03-27      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
193
194        * cpu/Makefile.am: Remove AUTOMAKE_OPTIONS.
195        * src/Makefile.am: Remove AUTOMAKE_OPTIONS.
196        * Makefile.am: Remove AUTOMAKE_OPTIONS.
197        * include/Makefile.am: Remove AUTOMAKE_OPTIONS.
198        * inline/Makefile.am: Remove AUTOMAKE_OPTIONS.
199        * macros/Makefile.am: Remove AUTOMAKE_OPTIONS.
200
[a94c2fbb]2012002-01-29      Joel Sherrill <joel@OARcorp.com>
202
203        * include/rtems/score/watchdog.h: Added WATCHDOG_MAXIMUM_INTERVAL.
204
[5addee5]2052002-01-19      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
206
207        * include/rtems/system.h: Fix typo in yesterday's change:
208        RTEMS_MULTILIBS.
209
[61129cc5]2102001-01-18      Joel Sherrill <joel@OARcorp.com>
211
212        * include/rtems/system.h: Only include cpuopts.h when building a
213        multilib configuration.  Some ports still need targopts.h but this
214        small modification lets those ports work non-multilib while
215        fixing being fixed for multilib.
216       
[b72e368c]2172002-01-04      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
218
219        * include/rtems/seterr.h: Add do {..} while (0) in defines.
220        Rename set_errno_and_return_minus_one into
221        rtems_set_errno_and_return_minus_one.
222
[b804d632]2232001-12-19      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
224
225        * inline/rtems/score/object.inl, macros/rtems/score/object.inl: Add
226        add casts to Objects_Id in _Objects_Build_ids to avoid implicit
227        typecasts from enum to int16 on bit16 targets (here: h8300).
228
[ca837f8a]2292001-12-19      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
230
231        * src/Makefile.am: Add multilib support.
232
[89ee0b6]2332001-11-28      Joel Sherrill <joel@OARcorp.com>,
234
235        This was tracked as PR91.
236        * include/rtems/score/isr.h, inline/rtems/score/isr.inl,
237        macros/rtems/score/isr.inl: Modified to allow any port to provide
238        its own implementation of the macro _ISR_Is_in_progress.  If the
239        port overrides this macro, it must provide a non-inlined function
240        implementation.
241
[94ab166]2422001-11-20      Joel Sherrill <joel@OARcorp.com>
243
244        * src/threadhandler.c: When __USE__MAIN__ is defined by the toolset,
245        invoke the global constructors via __main.  Reported as tested by
246        Alexandra Kossovsky <sasha@oktet.ru> and  Victor V. Vengerov
247        <vvv@oktet.ru> in conjunction with a new set of tool RPMs
248        (gcc2.95.3newlib1.9.0-3).  This was tracked as GNATS PR tools/84.
249
[c31c15c]2502001-11-07      Joel Sherrill <joel@OARcorp.com>
251
252        Reported by Todor.Todorov@barco.com and tracked as PR36.
253        * include/rtems/score/object.h: Added prototype for
254        _Objects_Get_by_index().
255        * src/objectget.c, src/objectgetisr.c: Corrected procedure for
256        getting index from Id so it is correct and optimal for both single
257        and multiprocessor configurations.
[43b6f75]258
[6244ab4]2592001-10-22      Joel Sherrill <joel@OARcorp.com>
260
261        * src/threadhandler.c: Use __USE_INIT_FINI__ since USE_INIT_FINI
262        pollutes the application namespace.
263
[4ef484fe]2642001-10-16      Joel Sherrill <joel@OARcorp.com>
265
266        * .cvsignore: Add stamp-h.in.
267
[f11615f]2682001-10-16      Joel Sherrill <joel@OARcorp.com>
269
270        * include/Makefile.am: Fixed path to cpuopts-tmp.h.
271
[ff61414]2722001-10-16      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
273
274        * include/rtems/Makefile.am: Remove.
275        * include/rtems/Makefile.am: Remove.
276        * include/Makefile.am: Handle subdirs, require automake-1.5.
277        * macros/rtems/Makefile.am: Remove.
278        * macros/rtems/score/Makefile.am: Remove.
279        * macros/Makefile.am: Handle subdirs, require automake-1.5.
280        * inline/rtems/Makefile.am: Remove.
281        * inline/rtems/score/Makefile.am: Remove.
282        * inline/Makefile.am: Handle subdirs, require automake-1.5.
283        * Makefile.am: require automake-1.5
284
[3f56f22c]2852001-09-28      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
286
287        * include/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
288        * include/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
289        * inline/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
290        * macros/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
291
[5b87515d]2922001-09-27      Eric Norum <eric.norum@usask.ca>
293
294        * src/threadhandler.c: Now process C++ global constructors
295        (_init) as part of the first task execution not in BSP space.
296        This depends on the toolset defining USE_INIT_FINI so you
297        have to have the right toolset version.
298
2992001-09-23      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
300
301        * include/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
302        * include/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
303        * inline/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
304        * macros/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
305
[fb1d8f81]3062001-08-30      Joel Sherrill <joel@OARcorp.com>
307
308        *  src/coremutex.c, src/coremutexseize.c, src/coremutexsurrender.c,
309        inline/rtems/score/coremutex.inl: The per thread field resource_count
310        should only be manipulated when a mutex is priority ceiling or
311        priority inherit.  This was reported by Chris Johns <ccj@acm.org>
312        who also noticed that the use of switches for all disciplines
313        generated less efficient code than using explicit tests for the one
314        or two cases we were really interested in.  Further review of his
315        modifications made it apparent that the "isa" methods to test mutex
316        discipline were not being used so this modification was swept into
317        the code as well.
318
[dc6b5ed3]3192001-08-30      Joel Sherrill <joel@OARcorp.com>
320
321        * src/coremutexseize.c: Add missing code for proper handling
322        of nesting acquisitions.  This only impacts building with
323        inlines disabled on the source with the "fast mutex" optimizations.
324        This was post the 4.5 branch and did not impact released versions.
325
[0a51f80]3262001-08-16      Joel Sherrill <joel@OARcorp.com>
327
328        * src/coremutexsurrender.c: Use holder thread not executing
329        thread because even though they may and often are the same
330        it is not guaranteed unless the proper attribute is set.
331
[7d741413]3322001-08-16      Joel Sherrill <joel@OARcorp.com>
333
334        * include/rtems/score/coremsg.h, src/coremsgsubmit.c: Add a new
335        return status to account for blocking sends.  Otherwise, the
336        caller will think that the returned message status will have
337        the ultimate results of the operation.  If the send times out,
338        the final status will be in the return_code of the thread.
339
[00815403]3402001-08-09      Joel Sherrill <joel@OARcorp.com>
341
342        * include/rtems/score/coremsg.h, inline/rtems/score/coremsg.inl,
343        src/coremsgsubmit.c: Unblocking message queue operations should
344        NOT use _Thread_Executing for return status since it is permissible
345        to invoke message send operations from an ISR.  This was reported
346        by Suvrat Gupta <suvrat@utstar.com>.
347
[fe70df19]3482000-05-25      Sergei Organov <osv@javad.ru>
349
350        * macros/rtems/score/coresem.inl, inline/rtems/score/coresem.inl:
351        Cut and paste problem incorrectly enabled interrupts twice with
352        the first time being too early.
353
[ba91ea3]3542001-05-09      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
355
356        * include/rtems/score/.cvsignore: Add stamp-h, cpuopts.h,
357        cpuopts.h.in, cpuopts-tmp.h.
358
[792eb74]3592001-02-03      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
360
361        * include/rtems/Makefile.am, include/rtems/score/Makefile.am,
362        inline/rtems/score/Makefile.am, macros/rtems/score/Makefile.am
363        Apply include_*HEADERS instead of H_FILES.
364
[a76e2b4]3652001-01-29      Joel Sherrill <joel@OARcorp.com>
366
367        * src/objectextendinformation.c: Added include of string.h to
368        eliminate warning.
369
[81f6e8cc]3702001-01-08      Joel Sherrill <joel@OARcorp.com>
371
372        * src/threadinitialize.c: Fix my bad hack of Ralf's fp_area
373        warning removal patch. :(
374
[ac5c8c7]3752001-01-08      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
376
377        * src/threadinitialize.c: Removed warning.
378
[d6ea098]3792001-01-03      Joel Sherrill <joel@OARcorp.com>
380
381        * src/isr.c: Modify to properly dereference _ISR_Vector_table
382        now that it is dynamically allocated.
383
[3b06e12b]3842000-12-19      Joel Sherrill <joel@OARcorp.com>
385
386        * src/isr.c: Allocate the _ISR_Vector_table all the time not just when
387        we are allocating an interrupt stack.
388
[9928d08]3892000-12-13      Joel Sherrill <joel@OARcorp.com>
390
391        * include/rtems/score/isr.h, src/isr.c: Allocate it from the
392        workspace rather than explicitly declaring it.  This allows
393        the size to be a non-constant from the perspective of score/cpu.
394
[c9fd602]3952000-12-01      Joel Sherrill <joel@OARcorp.com>
396
397        * macros/rtems/score/coresem.inl: Removed comments since convention
398        calls for comments to be in inline versin.
399        * macros/rtems/score/object.inl (Objects_Get_local_object): Fixed
400        style to use _ prefix on variable names and use parentheses.
401        * macros/rtems/score/object.inl (_Objects_Namespace_remove): Added.
402
[43b6f75]4032000-11-30      Joel Sherrill <joel@OARcorp.com>
404
405        * General effort to make things compile with macros not inlines
406        * inline/rtems/score/coremutex.inl: Added comment indicating
407        for macros there is another copy of
408        _CORE_mutex_Seize_interrupt_trylock() in src/coremutexseize.c.
409        * src/coremutexseize.c: Added body of
410        _CORE_mutex_Seize_interrupt_trylock() for macro case.
411        * macros/rtems/score/coremutex.inl: Added prototype for
412        _CORE_mutex_Seize_interrupt_trylock() since there is a real
413        body when macros are enabled.
414        * macros/rtems/score/coresem.inl: Added macro implementation of
415        _CORE_semaphore_Seize_isr_disable.
416        * macros/score/Makefile.am: Fixed typos.
417        * rtems/score/address.inl: Correct macro implementation of
418        _Addresses_Is_aligned() so it would compile.
419        * macros/rtems/score/coremsg.inl: Added closing parentheses.
[66fedb46]420       
4212000-11-28      Chris Johns <ccj@acm.org>
422
423        * src/heapallocate.c: Do not allow the size to overflow when
424        adjusting it.  A test allocated a stack of -1 (~0). This
425        actually resulted in a stack being allocated but with a
426        size of 0xb. The allocator did not test the size to see if
427        it rolled through 0 and so allowed the allocation to happen, the
428        thread to get created. The task crashed as you would expect.
[e94ad1fe]429
[ba41dfd]4302000-11-02      Joel Sherrill <joel@OARcorp.com>
431
432        * include/rtems/system.h: Use proper conditional (RTEMS_POSIX_API)
433        so prototypes for POSIX_MP_NOT_IMPLEMENTED(), POSIX_NOT_IMPLEMENTED(),
434        POSIX_BOTTOM_REACHED() are actually included.
435
[b5c50309]4362000-11-02      Joel Sherrill <joel@OARcorp.com>
437
438        * include/rtems/system.h: Add prototypes for POSIX_MP_NOT_IMPLEMENTED(),
439        POSIX_NOT_IMPLEMENTED(), POSIX_BOTTOM_REACHED() removed from newlib.
440
[252565f]4412000-10-18      Nick Simon <Nick.SIMON@syntegra.bt.co.uk>
442
443        * src/heapgetinfo.c, include/rtems/score/heap.h, src/Makefile.am:
444        Added _Heap_Get_information() and information control block.
445        * src/heapgetinfo.c: New file.
446
[a8d650c]4472000-09-25      Joel Sherrill <joel@OARcorp.com>
448
449        * rtems/system.h: Switched a29k and hppa1.1 to using cpuopts.h not
450        targopts.h to reduce dependency on BSP.
451
[2c6a0491]4522000-09-20      Joel Sherrill <joel@OARcorp.com>
453
454        * src/objectgetbyindex.c: Do not enable dispatching on an
455        error path it was not disabled on.
456
[cc480f9c]4572000-09-04      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
458
459        * src/Makefile.am: Include compile.am.
460
[188c82b]4612000-08-30      Joel Sherrill <joel@OARcorp.com>
462
463        * Many files: Moved posix/include/rtems/posix/seterr.h to
464        score/include/rtems/seterr.h so it would be available within
465        all APIs.
466
[8ca1e808]4672000-08-17      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
468
469        * include/rtems/system.h: Include cpuopts.h for __i386__.
470
[e94ad1fe]4712000-08-10      Joel Sherrill <joel@OARcorp.com>
472
473        * ChangeLog: New file.
Note: See TracBrowser for help on using the repository browser.