Mercurial > hg > Game > Cerium
changeset 1228:98094b0f1b01 draft
fix
author | Daichi TOMA <e085740@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 02 Aug 2011 09:55:55 +0900 |
parents | bb75ee244826 |
children | 424c1f16e704 |
files | TaskManager/kernel/ppe/TaskManagerImpl.cc TaskManager/kernel/schedule/SchedTask.cc |
diffstat | 2 files changed, 9 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/TaskManager/kernel/ppe/TaskManagerImpl.cc Tue Aug 02 06:52:08 2011 +0900 +++ b/TaskManager/kernel/ppe/TaskManagerImpl.cc Tue Aug 02 09:55:55 2011 +0900 @@ -296,12 +296,12 @@ // tasklistはどこかでfreeされてるはずなので、メモリリークしない。 // TaskArray の rbuf はfreeされない見たいなので、ここでfreeしてみる。 -#ifdef __CERIUM_FIFO__ -#else - if (me->command == TaskArray) { - free(me->rbuf); - } -#endif + + //;TODO + //ReferencedDmaManagerを使う場合ここでfreeすると、wordcountが動かない +// if (me->command == TaskArray) { +// free(me->rbuf); +// } // me を誰かが持っていて、me が finish した後に、 // me->wait_for(i) とか、やられると気まずい。
--- a/TaskManager/kernel/schedule/SchedTask.cc Tue Aug 02 06:52:08 2011 +0900 +++ b/TaskManager/kernel/schedule/SchedTask.cc Tue Aug 02 09:55:55 2011 +0900 @@ -95,10 +95,9 @@ } connector->dma_wait(DMA_READ + this->tag); run(this, readbuf, writebuf); -#ifdef __CERIUM_FIFO__ -#else - free(readbuf); -#endif + //;TODO + //ReferencedDmaManagerを使う場合ここでfreeすると、wordcountが動かない + //free(readbuf); // 書き込む領域がなければ無視