diff options
author | Derek Hower <drh5@cs.wisc.edu> | 2009-07-08 08:40:32 -0500 |
---|---|---|
committer | Derek Hower <drh5@cs.wisc.edu> | 2009-07-08 08:40:32 -0500 |
commit | 15afc87f7cb5994c308422d2b01e1c0723a07e5e (patch) | |
tree | 7993fb61ca8ee4ce54c12854d3ea31a666ab0940 /src/mem/protocol | |
parent | 6a83bd5a03b7597b04ff447e232166a8afcaf402 (diff) | |
download | gem5-15afc87f7cb5994c308422d2b01e1c0723a07e5e.tar.xz |
slicc: fixed MI_example bug. The directory wasn't deallocating the TBE, leading to a leak. Also increased the default max TBE size to 256 to allow memtest to pass the regression.
Diffstat (limited to 'src/mem/protocol')
-rw-r--r-- | src/mem/protocol/MI_example-dir.sm | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/mem/protocol/MI_example-dir.sm b/src/mem/protocol/MI_example-dir.sm index 29678ffc4..a275e4b8d 100644 --- a/src/mem/protocol/MI_example-dir.sm +++ b/src/mem/protocol/MI_example-dir.sm @@ -528,14 +528,15 @@ machine(Directory, "Directory protocol") : LATENCY_TO_MEM_CTRL_LATENCY LATENCY_D transition(I, DMA_WRITE, ID_W) { - dw_writeDMAData; -// da_sendDMAAck; + v_allocateTBE; qw_queueMemoryWBRequest_partial; p_popIncomingDMARequestQueue; } transition(ID_W, Memory_Ack, I) { + dwt_writeDMADataFromTBE; da_sendDMAAck; + w_deallocateTBE; l_popMemQueue; } @@ -548,7 +549,7 @@ machine(Directory, "Directory protocol") : LATENCY_TO_MEM_CTRL_LATENCY LATENCY_D drp_sendDMAData; c_clearOwner; a_sendWriteBackAck; - // d_deallocateDirectory; + d_deallocateDirectory; i_popIncomingRequestQueue; } @@ -561,7 +562,6 @@ machine(Directory, "Directory protocol") : LATENCY_TO_MEM_CTRL_LATENCY LATENCY_D transition(M_DWR, PUTX, M_DWRI) { qw_queueMemoryWBRequest_partialTBE; c_clearOwner; - w_deallocateTBE; i_popIncomingRequestQueue; } @@ -570,6 +570,7 @@ machine(Directory, "Directory protocol") : LATENCY_TO_MEM_CTRL_LATENCY LATENCY_D l_sendWriteBackAck; da_sendDMAAck; w_deallocateTBE; + d_deallocateDirectory; l_popMemQueue; } @@ -583,7 +584,6 @@ machine(Directory, "Directory protocol") : LATENCY_TO_MEM_CTRL_LATENCY LATENCY_D c_clearOwner; v_allocateTBEFromRequestNet; l_queueMemoryWBRequest; - d_deallocateDirectory; i_popIncomingRequestQueue; } @@ -591,6 +591,7 @@ machine(Directory, "Directory protocol") : LATENCY_TO_MEM_CTRL_LATENCY LATENCY_D w_writeDataToMemoryFromTBE; l_sendWriteBackAck; w_deallocateTBE; + d_deallocateDirectory; l_popMemQueue; } @@ -601,7 +602,6 @@ machine(Directory, "Directory protocol") : LATENCY_TO_MEM_CTRL_LATENCY LATENCY_D transition(I, PUTX_NotOwner, I) { b_sendWriteBackNack; - d_deallocateDirectory; i_popIncomingRequestQueue; } |