changeset 1757:feba52cd8374 draft

no working
author kkb
date Fri, 22 Nov 2013 13:24:10 +0900
parents 165e11832816
children 141174033f1a
files TaskManager/kernel/ppe/TaskList.cc TaskManager/kernel/schedule/SchedTask.cc TaskManager/test/UtilizationTest/multiply
diffstat 3 files changed, 3 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/TaskManager/kernel/ppe/TaskList.cc	Fri Nov 22 13:08:00 2013 +0900
+++ b/TaskManager/kernel/ppe/TaskList.cc	Fri Nov 22 13:24:10 2013 +0900
@@ -22,7 +22,7 @@
 void TaskList::print() {
     printf("dim %d,x %d,y %d,z %d,cpu %d\n",dim,(int)x,(int)y,(int)z,cpu);
     Task* t = &tasks[0];
-    while(t) {
+    while(t<last()) {
         printf("command %s\n",task_list[t->command].name);
         t = t->next();
     }
--- a/TaskManager/kernel/schedule/SchedTask.cc	Fri Nov 22 13:08:00 2013 +0900
+++ b/TaskManager/kernel/schedule/SchedTask.cc	Fri Nov 22 13:24:10 2013 +0900
@@ -185,7 +185,7 @@
     __debug("[SchedTask:%s]\n", __FUNCTION__);
 
     if (cur_index == 0) { // 最初の一つ
-        while (!list->dim && list->cpu != scheduler->id)
+        while (list && !list->dim && list->cpu != scheduler->id)
             list=list->next;
         if (list == 0) return new SchedNop2Ready(scheduler);
         SchedTask *nextSched = new SchedTask();
@@ -203,7 +203,7 @@
         return nextSched;
     } else {
         list = list->next;
-        while (!list->dim && list->cpu != scheduler->id)
+        while (list && !list->dim && list->cpu != scheduler->id)
             list=list->next;
         memaddr nextList = (memaddr)list;
         if (nextList == 0) {
Binary file TaskManager/test/UtilizationTest/multiply has changed