From b7d2dc95c5a191a393ee1ae7cd4bf45fe1aac497 Mon Sep 17 00:00:00 2001 From: daniel-k Date: Fri, 8 Jul 2016 18:23:51 +0200 Subject: [PATCH] kernel/tasks: initialize task->last_core with initial core instead of 0 Otherwise it's not possible to determine on which core a task is running if it hasn't been rescheduled at least one time. --- hermit/kernel/tasks.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hermit/kernel/tasks.c b/hermit/kernel/tasks.c index 44c04ece7..d2d15a087 100644 --- a/hermit/kernel/tasks.c +++ b/hermit/kernel/tasks.c @@ -376,7 +376,7 @@ int clone_task(tid_t* id, entry_point_t ep, void* arg, uint8_t prio) if (task_table[i].status == TASK_INVALID) { task_table[i].id = i; task_table[i].status = TASK_READY; - task_table[i].last_core = 0; + task_table[i].last_core = core_id; task_table[i].last_stack_pointer = NULL; task_table[i].stack = stack; task_table[i].prio = prio; @@ -476,7 +476,7 @@ int create_task(tid_t* id, entry_point_t ep, void* arg, uint8_t prio, uint32_t c if (task_table[i].status == TASK_INVALID) { task_table[i].id = i; task_table[i].status = TASK_READY; - task_table[i].last_core = 0; + task_table[i].last_core = core_id; task_table[i].last_stack_pointer = NULL; task_table[i].stack = stack; task_table[i].prio = prio;