summaryrefslogtreecommitdiffstats
path: root/c/src/exec/rtems/src/taskvariableadd.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--c/src/exec/rtems/src/taskvariableadd.c85
1 files changed, 0 insertions, 85 deletions
diff --git a/c/src/exec/rtems/src/taskvariableadd.c b/c/src/exec/rtems/src/taskvariableadd.c
deleted file mode 100644
index 04d56d409d..0000000000
--- a/c/src/exec/rtems/src/taskvariableadd.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * rtems_task_variable_add - Add a per-task variable
- *
- *
- * COPYRIGHT (c) 1989-1999.
- * On-Line Applications Research Corporation (OAR).
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.OARcorp.com/rtems/license.html.
- *
- * $Id$
- */
-
-#include <rtems/system.h>
-#include <rtems/rtems/tasks.h>
-#include <rtems/score/wkspace.h>
-
-/*
- * rtems_task_variable_add
- *
- * This directive registers a task variable.
- */
-
-rtems_status_code rtems_task_variable_add(
- rtems_id tid,
- void **ptr,
- void (*dtor)(void *)
-)
-{
- Thread_Control *the_thread;
- Objects_Locations location;
- rtems_task_variable_t *tvp, *new;
-
- the_thread = _Thread_Get (tid, &location);
- switch (location) {
- case OBJECTS_REMOTE:
-#if defined(RTEMS_MULTIPROCESSING)
- _Thread_Dispatch();
- return RTEMS_ILLEGAL_ON_REMOTE_OBJECT;
-#endif
-
- case OBJECTS_ERROR:
- return RTEMS_INVALID_ID;
-
- default:
- return RTEMS_INTERNAL_ERROR;
-
- case OBJECTS_LOCAL:
-
- /*
- * Figure out if the variable is already in this task's list.
- */
-
- tvp = the_thread->task_variables;
- while (tvp) {
- if (tvp->ptr == ptr) {
- tvp->dtor = dtor;
- _Thread_Enable_dispatch();
- return RTEMS_SUCCESSFUL;
- }
- tvp = tvp->next;
- }
-
- /*
- * Now allocate memory for this task variable.
- */
-
- new = (rtems_task_variable_t *)
- _Workspace_Allocate(sizeof(rtems_task_variable_t));
- if (new == NULL) {
- _Thread_Enable_dispatch();
- return RTEMS_NO_MEMORY;
- }
- new->gval = *ptr;
- new->ptr = ptr;
- new->dtor = dtor;
-
- new->next = the_thread->task_variables;
- the_thread->task_variables = new;
- _Thread_Enable_dispatch();
- return RTEMS_SUCCESSFUL;
- }
- return RTEMS_INTERNAL_ERROR; /* unreached - only to remove warnings */
-}