Merge pull request #662 from Kijewski/remove-sched_init

Do not zero out sched_threads needlessly
This commit is contained in:
Christian Mehlis 2014-02-16 11:37:05 +01:00
commit 3dce0cbb97
3 changed files with 1 additions and 32 deletions

View File

@ -34,11 +34,6 @@
#define SCHED_PRIO_LEVELS 16 #define SCHED_PRIO_LEVELS 16
#endif #endif
/**
* @brief Initializes thread table, active thread information, and runqueues
*/
void sched_init(void);
/** /**
* @brief Triggers the scheduler to schedule the next task * @brief Triggers the scheduler to schedule the next task
*/ */

View File

@ -70,8 +70,6 @@ void kernel_init(void)
dINT(); dINT();
printf("kernel_init(): This is RIOT! (Version: %s)\n", VERSION); printf("kernel_init(): This is RIOT! (Version: %s)\n", VERSION);
sched_init();
if (thread_create(idle_stack, sizeof(idle_stack), PRIORITY_IDLE, CREATE_WOUT_YIELD | CREATE_STACKTEST, idle_thread, idle_name) < 0) { if (thread_create(idle_stack, sizeof(idle_stack), PRIORITY_IDLE, CREATE_WOUT_YIELD | CREATE_STACKTEST, idle_thread, idle_name) < 0) {
printf("kernel_init(): error creating idle task.\n"); printf("kernel_init(): error creating idle task.\n");
} }

View File

@ -43,7 +43,7 @@ volatile unsigned int sched_context_switch_request;
volatile tcb_t *sched_threads[MAXTHREADS]; volatile tcb_t *sched_threads[MAXTHREADS];
volatile tcb_t *active_thread; volatile tcb_t *active_thread;
volatile int thread_pid; volatile int thread_pid = -1;
volatile int last_pid = -1; volatile int last_pid = -1;
clist_node_t *runqueues[SCHED_PRIO_LEVELS]; clist_node_t *runqueues[SCHED_PRIO_LEVELS];
@ -54,30 +54,6 @@ static void (*sched_cb) (uint32_t timestamp, uint32_t value) = NULL;
schedstat pidlist[MAXTHREADS]; schedstat pidlist[MAXTHREADS];
#endif #endif
void sched_init()
{
printf("Scheduler...");
int i;
for (i = 0; i < MAXTHREADS; i++) {
sched_threads[i] = NULL;
#if SCHEDSTATISTICS
pidlist[i].laststart = 0;
pidlist[i].runtime_ticks = 0;
pidlist[i].schedules = 0;
#endif
}
active_thread = NULL;
thread_pid = -1;
for (i = 0; i < SCHED_PRIO_LEVELS; i++) {
runqueues[i] = NULL;
}
printf("[OK]\n");
}
void sched_run() void sched_run()
{ {
sched_context_switch_request = 0; sched_context_switch_request = 0;