diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2002-07-01 22:30:12 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2002-07-01 22:30:12 +0000 |
commit | ef9505a92f6c9c962dc2649f49002311466e009e (patch) | |
tree | 5a869b6101918ff8b37f19ca2b36f0b835d69d58 /c/src/exec/score/include/rtems/score/threadq.h | |
parent | 2002-07-01 Joel Sherrill <joel@OARcorp.com> (diff) | |
download | rtems-ef9505a92f6c9c962dc2649f49002311466e009e.tar.bz2 |
2002-07-01 Joel Sherrill <joel@OARcorp.com>
* Mega patch merge to change the format of the object IDs to
loosen the dependency between the SCORE and the various APIs.
There was considerable work to simplify the object name management
and it appears that the name_table field is no longer needed.
This patch also includes the addition of the internal mutex
which is currently only used to protect some types of allocation
and deallocation. This significantly can reduce context
switch latency under certain circumstances. In particular,
some heap/region operations were O(n) and had dispatching
disabled. This should help enormously. With this merge,
the patch is not as clean as it should be. In particular,
the documentation has not been modified to reflect the new object
ID layout, the IDs in the test screens are not updated, and
_Objects_Get_information needs to be a real routine not inlined.
As part of this patch a lot of MP code for thread/proxy blocking
was made conditional and cleaned up.
* include/Makefile.am, include/rtems/score/coremsg.h,
include/rtems/score/coremutex.h, include/rtems/score/coresem.h,
include/rtems/score/object.h, include/rtems/score/threadq.h,
inline/rtems/score/object.inl, inline/rtems/score/thread.inl,
macros/rtems/score/object.inl, src/Makefile.am, src/coremsg.c,
src/coremutex.c, src/coresem.c, src/mpci.c,
src/objectcomparenameraw.c, src/objectextendinformation.c,
src/objectinitializeinformation.c, src/objectnametoid.c,
src/thread.c, src/threadclose.c, src/threadget.c, src/threadq.c,
src/threadqextractwithproxy.c: Modified as part of above.
* include/rtems/score/apimutex.h, src/objectgetnoprotection.c: New
files.
Diffstat (limited to '')
-rw-r--r-- | c/src/exec/score/include/rtems/score/threadq.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/c/src/exec/score/include/rtems/score/threadq.h b/c/src/exec/score/include/rtems/score/threadq.h index 1ef6c009cb..db275177c5 100644 --- a/c/src/exec/score/include/rtems/score/threadq.h +++ b/c/src/exec/score/include/rtems/score/threadq.h @@ -47,12 +47,14 @@ typedef void ( *Thread_queue_Flush_callout )( * extracted from the remote queue). */ +#if 0 typedef void ( *Thread_queue_Extract_callout )( Thread_Control * ); SCORE_EXTERN Thread_queue_Extract_callout _Thread_queue_Extract_table[ OBJECTS_CLASSES_LAST + 1 ]; +#endif /* * _Thread_queue_Dequeue @@ -103,7 +105,7 @@ void _Thread_queue_Extract( * DESCRIPTION: * * This routine extracts the_thread from the_thread_queue - * and insures that if there is a proxy for this task on + * and ensures that if there is a proxy for this task on * another node, it is also dealt with. */ @@ -152,10 +154,8 @@ void _Thread_queue_Flush( void _Thread_queue_Initialize( Thread_queue_Control *the_thread_queue, - Objects_Classes the_class, Thread_queue_Disciplines the_discipline, States_Control state, - Thread_queue_Extract_callout proxy_extract_callout, unsigned32 timeout_status ); |