changeset 485:9745d08e2f25

fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 06 Oct 2009 10:05:49 +0900
parents 8602bb323369
children bfbad00ed9be
files TaskManager/Cell/CellTaskManagerImpl.cc TaskManager/Fifo/FifoTaskManagerImpl.cc TaskManager/Fifo/FifoTaskManagerImpl.h
diffstat 3 files changed, 13 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/TaskManager/Cell/CellTaskManagerImpl.cc	Mon Oct 05 20:45:17 2009 +0900
+++ b/TaskManager/Cell/CellTaskManagerImpl.cc	Tue Oct 06 10:05:49 2009 +0900
@@ -182,7 +182,7 @@
 CellTaskManagerImpl::mail_check(MailQueuePtr mail_list)
 {
     // PPE Scheduler からの mail check
-    ppeManager->mail_check(mail_list);
+    ppeManager->mail_check(mail_list, waitTaskQueue);
 
     do {
 	unsigned int data;
--- a/TaskManager/Fifo/FifoTaskManagerImpl.cc	Mon Oct 05 20:45:17 2009 +0900
+++ b/TaskManager/Fifo/FifoTaskManagerImpl.cc	Tue Oct 06 10:05:49 2009 +0900
@@ -37,8 +37,6 @@
     taskQueueImpl = new TaskQueueInfo;
     htaskImpl     = new HTaskInfo;
 
-    machineNum = machineNum*2; // What!?
-
     taskQueueImpl->init(TASK_MAX_SIZE*4);
     htaskImpl->init(TASK_MAX_SIZE*2);
 
@@ -66,7 +64,10 @@
     taskListImpl  = tm-> taskListImpl  ;
     taskQueueImpl = tm-> taskQueueImpl ;
     htaskImpl     = tm-> htaskImpl     ;
-    waitTaskQueue     = tm->waitTaskQueue; 
+    waitTaskQueue     = NULL;   // mail_check で外から設定される
+    activeTaskQueue     = NULL; // CellTaskManagerImple 側を使う
+
+    // waitTaskQueue     = tm->waitTaskQueue; 
     // activeQueue は?
 
     mainTaskList = taskListImpl->create();
@@ -184,6 +185,13 @@
  *         NULL なら全てのタスクが実行終了したということ
  */
 void
+FifoTaskManagerImpl::mail_check(MailQueuePtr mail_list, TaskQueueInfo *waitQueue)
+{
+    waitTaskQueue = waitQueue;
+    mail_check(mail_list);
+}
+
+void
 FifoTaskManagerImpl::mail_check(MailQueuePtr mail_list)
 {
     MailQueuePtr q = mail_list;
--- a/TaskManager/Fifo/FifoTaskManagerImpl.h	Mon Oct 05 20:45:17 2009 +0900
+++ b/TaskManager/Fifo/FifoTaskManagerImpl.h	Tue Oct 06 10:05:49 2009 +0900
@@ -24,6 +24,7 @@
     void init(MainScheduler*, TaskManagerImpl*);
     void run(void);
     void mail_check(MailQueuePtr mail_list);
+    void mail_check(MailQueuePtr mail_list, TaskQueueInfo *waitQueue);
     TaskListPtr get_runTaskList(void);
     MailQueuePtr schedule(TaskListPtr);