diff options
author | Andreas Heinig <andreas.heinig@cs.tu-dortmund.de> | 2012-08-06 13:53:38 -0400 |
---|---|---|
committer | Gedare Bloom <gedare@rtems.org> | 2012-08-06 13:53:38 -0400 |
commit | 2aff1f08757def657fcd1794f98a5743966e80b6 (patch) | |
tree | e29655d88d360cc38723168bdb454baabe461ce3 /cpukit | |
parent | PR2069: [CBS Scheduler] Memory leak and enqueue problem (diff) | |
download | rtems-2aff1f08757def657fcd1794f98a5743966e80b6.tar.bz2 |
PR2069: Similar. Forgot to add missing file.
Diffstat (limited to 'cpukit')
-rw-r--r-- | cpukit/score/src/schedulercbsallocate.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/cpukit/score/src/schedulercbsallocate.c b/cpukit/score/src/schedulercbsallocate.c new file mode 100644 index 0000000000..226bc8ac44 --- /dev/null +++ b/cpukit/score/src/schedulercbsallocate.c @@ -0,0 +1,38 @@ +/* + * Copyright (C) 2011 Petr Benes. + * Copyright (C) 2011 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.rtems.com/license/LICENSE. + */ + +#if HAVE_CONFIG_H +#include "config.h" +#endif + +#include <rtems/system.h> +#include <rtems/config.h> +#include <rtems/score/scheduler.h> +#include <rtems/score/scheduleredf.h> +#include <rtems/score/schedulercbs.h> +#include <rtems/score/wkspace.h> + +void *_Scheduler_CBS_Allocate( + Thread_Control *the_thread +) +{ + void *sched; + Scheduler_CBS_Per_thread *schinfo; + + sched = _Workspace_Allocate(sizeof(Scheduler_CBS_Per_thread)); + if ( sched ) { + the_thread->scheduler_info = sched; + schinfo = (Scheduler_CBS_Per_thread *)(the_thread->scheduler_info); + schinfo->edf_per_thread.thread = the_thread; + schinfo->edf_per_thread.queue_state = SCHEDULER_EDF_QUEUE_STATE_NEVER_HAS_BEEN; + schinfo->cbs_server = NULL; + } + + return sched; +} |