changeset 718:31eb1f56d986

write dma miss.
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 19 Dec 2009 09:50:37 +0900
parents 4c12f679a0fa
children cafffff0f45a
files TaskManager/Cell/CellTaskManagerImpl.cc TaskManager/ChangeLog TaskManager/Makefile.fifo TaskManager/kernel/schedule/SchedTask.cc
diffstat 4 files changed, 10 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/TaskManager/Cell/CellTaskManagerImpl.cc	Fri Dec 18 12:17:31 2009 +0900
+++ b/TaskManager/Cell/CellTaskManagerImpl.cc	Sat Dec 19 09:50:37 2009 +0900
@@ -271,12 +271,6 @@
 		spe_running++;
 	    }
 	}
-
-	// 現在の FifoTaskManager の仕様では
-	// ・PPE で実行するタスクが無くなれば終了する
-	// であり、この場合もし SPE にタスクが残っていても
-	// メインループから抜けてプログラム終了となってしまうので
-	// ここでストップかけてます。
     } while (ppeManager->activeTaskQueue->empty() && !waitTaskQueue->empty());
 	
     return ppeManager->get_runTaskList();
--- a/TaskManager/ChangeLog	Fri Dec 18 12:17:31 2009 +0900
+++ b/TaskManager/ChangeLog	Sat Dec 19 09:50:37 2009 +0900
@@ -1,3 +1,12 @@
+2009-12-19 Shinji KONO <kono@ie.u-ryukyu.ac.jp>
+
+   そうか、TaskList->next は、SPE 側で自分で呼び出しているわけね。
+   と言うことは、schdule(list) が終るまでは、mail check に戻って
+   こない... それだと、ちょっとまずいね。
+
+   となると、TaskList のfree(clear)のtimingは? schdule から抜けた
+   時と言うことになるわけだけど。
+
 2009-12-16 Shinji KONO <kono@ie.u-ryukyu.ac.jp>
 
    CellTaskManagerのTaskList_bg は変だよ。TaskList 自体が
--- a/TaskManager/Makefile.fifo	Fri Dec 18 12:17:31 2009 +0900
+++ b/TaskManager/Makefile.fifo	Sat Dec 19 09:50:37 2009 +0900
@@ -4,7 +4,7 @@
 
 .SUFFIXES: .cc .o
 
-EXTRA_CFLAGS = -D__CERIUM_FIFO__
+EXTRA_CFLAGS = -D__CERIUM_FIFO__ 
 
 .cc.o:
 	$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(INCLUDE) -c $< -o $@
--- a/TaskManager/kernel/schedule/SchedTask.cc	Fri Dec 18 12:17:31 2009 +0900
+++ b/TaskManager/kernel/schedule/SchedTask.cc	Sat Dec 19 09:50:37 2009 +0900
@@ -89,7 +89,6 @@
     // 書き込む領域がなければ無視
 
     if (task->w_size > 0) {
-	writebuf = scheduler->allocate(task->w_size);
 	scheduler->dma_store(writebuf, task->wbuf,task->w_size, DMA_WRITE);
     }
 }