PR2069: [CBS Scheduler] Memory leak and enqueue problem

Due to the fact that CBS extends the EDF scheduler, most parts of EDF are
 reused. One part is the allocation of the per-thread data. However, the CBS
 per-thread structure defines a further element (while including the rest of
 Scheduler_EDF_Per_thread)
This commit is contained in:
Andreas Heinig
2012-08-06 13:46:27 -04:00
committed by Gedare Bloom
parent 6c5d6c591f
commit 7a9288fe35
2 changed files with 13 additions and 1 deletions
+1
View File
@@ -238,6 +238,7 @@ libscore_a_SOURCES += src/scheduleredf.c \
## SCHEDULERCBS_C_FILES
libscore_a_SOURCES += src/schedulercbs.c \
src/schedulercbsallocate.c \
src/schedulercbsattachthread.c \
src/schedulercbscleanup.c \
src/schedulercbscreateserver.c \
@@ -49,7 +49,7 @@ extern "C" {
_Scheduler_EDF_Yield, /* yield entry point */ \
_Scheduler_EDF_Block, /* block entry point */ \
_Scheduler_CBS_Unblock, /* unblock entry point */ \
_Scheduler_EDF_Allocate, /* allocate entry point */ \
_Scheduler_CBS_Allocate, /* allocate entry point */ \
_Scheduler_EDF_Free, /* free entry point */ \
_Scheduler_EDF_Update, /* update entry point */ \
_Scheduler_EDF_Enqueue, /* enqueue entry point */ \
@@ -315,6 +315,17 @@ void _Scheduler_CBS_Budget_callout(
Thread_Control *the_thread
);
/**
* @brief Scheduler CBS Allocate
*
* This routine allocates CBS specific information of @a the_thread.
*
* @param[in] the_thread is the thread the scheduler is allocating
* management memory for.
*/
void *_Scheduler_CBS_Allocate(
Thread_Control *the_thread
);
#ifdef __cplusplus
}
#endif