diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 1999-11-16 16:09:50 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 1999-11-16 16:09:50 +0000 |
commit | d3fdf459179a4b176ebf90e603d1714c90af584c (patch) | |
tree | 646b3ee379f3a3dc57c71f552acb07e75865054b /c/src/exec/score/src/threadrestart.c | |
parent | Added threadreset.c. (diff) | |
download | rtems-d3fdf459179a4b176ebf90e603d1714c90af584c.tar.bz2 |
Now use _Thread_Reset().
Diffstat (limited to 'c/src/exec/score/src/threadrestart.c')
-rw-r--r-- | c/src/exec/score/src/threadrestart.c | 23 |
1 files changed, 4 insertions, 19 deletions
diff --git a/c/src/exec/score/src/threadrestart.c b/c/src/exec/score/src/threadrestart.c index 229dbe2d94..395599cf96 100644 --- a/c/src/exec/score/src/threadrestart.c +++ b/c/src/exec/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 ); |