summaryrefslogtreecommitdiffstats
path: root/cpukit/score/src
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1999-11-16 16:09:50 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1999-11-16 16:09:50 +0000
commitd3fdf459179a4b176ebf90e603d1714c90af584c (patch)
tree646b3ee379f3a3dc57c71f552acb07e75865054b /cpukit/score/src
parent88cb6b22ab0bd61c05358a3f370a803ee60e6459 (diff)
downloadrtems-d3fdf459179a4b176ebf90e603d1714c90af584c.tar.bz2
Now use _Thread_Reset().
Diffstat (limited to 'cpukit/score/src')
-rw-r--r--cpukit/score/src/threadrestart.c23
1 files changed, 4 insertions, 19 deletions
diff --git a/cpukit/score/src/threadrestart.c b/cpukit/score/src/threadrestart.c
index 229dbe2d94..395599cf96 100644
--- a/cpukit/score/src/threadrestart.c
+++ b/cpukit/score/src/threadrestart.c
@@ -32,7 +32,9 @@
*
* DESCRIPTION:
*
- * XXX
+ * This support routine restarts the specified task in a way that the
+ * next time this thread executes, it will begin execution at its
+ * original starting point.
*/
boolean _Thread_Restart(
@@ -44,25 +46,8 @@ boolean _Thread_Restart(
if ( !_States_Is_dormant( the_thread->current_state ) ) {
_Thread_Set_transient( the_thread );
- the_thread->resource_count = 0;
- the_thread->suspend_count = 0;
- the_thread->is_preemptible = the_thread->Start.is_preemptible;
- the_thread->budget_algorithm = the_thread->Start.budget_algorithm;
- the_thread->budget_callout = the_thread->Start.budget_callout;
- the_thread->Start.pointer_argument = pointer_argument;
- the_thread->Start.numeric_argument = numeric_argument;
-
- if ( !_Thread_queue_Extract_with_proxy( the_thread ) ) {
-
- if ( _Watchdog_Is_active( &the_thread->Timer ) )
- (void) _Watchdog_Remove( &the_thread->Timer );
- }
-
- if ( the_thread->current_priority != the_thread->Start.initial_priority ) {
- the_thread->real_priority = the_thread->Start.initial_priority;
- _Thread_Set_priority( the_thread, the_thread->Start.initial_priority );
- }
+ _Thread_Reset( the_thread, pointer_argument, numeric_argument );
_Thread_Load_environment( the_thread );