diff options
author | Ralf Corsepius <ralf.corsepius@rtems.org> | 2002-07-22 09:46:48 +0000 |
---|---|---|
committer | Ralf Corsepius <ralf.corsepius@rtems.org> | 2002-07-22 09:46:48 +0000 |
commit | 2b3e9d9b244e279ef5693a7cf5dacc7903164af5 (patch) | |
tree | 955e5242d4d08a8ec747c8350f55003bb9d4b519 /c/src/exec/posix/src/cancelrun.c | |
parent | Remove everything. (diff) | |
download | rtems-2b3e9d9b244e279ef5693a7cf5dacc7903164af5.tar.bz2 |
Remove, moved to cpukit.
Diffstat (limited to '')
-rw-r--r-- | c/src/exec/posix/src/cancelrun.c | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/c/src/exec/posix/src/cancelrun.c b/c/src/exec/posix/src/cancelrun.c deleted file mode 100644 index 4806e6d378..0000000000 --- a/c/src/exec/posix/src/cancelrun.c +++ /dev/null @@ -1,67 +0,0 @@ -/* - * $Id$ - */ - -#if HAVE_CONFIG_H -#include "config.h" -#endif - -#include <pthread.h> -#include <errno.h> - -#include <rtems/system.h> -#include <rtems/score/chain.h> -#include <rtems/score/isr.h> -#include <rtems/score/thread.h> -#include <rtems/score/wkspace.h> -#include <rtems/posix/cancel.h> -#include <rtems/posix/pthread.h> -#include <rtems/posix/threadsup.h> - -/*PAGE - * - * _POSIX_Threads_cancel_run - * - */ - -#if !defined(PTHREAD_CANCELED) -#warning "PTHREAD_CANCELED NOT DEFINED -- patch newlib" -#define PTHREAD_CANCELED ((void *) -1) -#endif - -void _POSIX_Threads_cancel_run( - Thread_Control *the_thread -) -{ - POSIX_Cancel_Handler_control *handler; - Chain_Control *handler_stack; - POSIX_API_Control *thread_support; - ISR_Level level; - - thread_support = the_thread->API_Extensions[ THREAD_API_POSIX ]; - - handler_stack = &thread_support->Cancellation_Handlers; - - thread_support->cancelability_state = PTHREAD_CANCEL_DISABLE; - - while ( !_Chain_Is_empty( handler_stack ) ) { - _ISR_Disable( level ); - handler = (POSIX_Cancel_Handler_control *) _Chain_Tail( handler_stack ); - _Chain_Extract_unprotected( &handler->Node ); - _ISR_Enable( level ); - - (*handler->routine)( handler->arg ); - - _Workspace_Free( handler ); - } - - /* Now we can delete the thread */ - - the_thread->Wait.return_argument = (unsigned32 *)PTHREAD_CANCELED; - _Thread_Close( - _Objects_Get_information( the_thread->Object.id ), - the_thread - ); - _POSIX_Threads_Free( the_thread ); - -} |