summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDerek Hower <drh5@cs.wisc.edu>2009-08-06 01:15:55 -0500
committerDerek Hower <drh5@cs.wisc.edu>2009-08-06 01:15:55 -0500
commitf5e0c56da24ad1b6ee51592d19a9babb7b59da05 (patch)
treeaeac740b7df0239012060a48e37c8c630e75d869
parenta1b5a6320f8aed2596969195d4955284c2dd04e8 (diff)
downloadgem5-f5e0c56da24ad1b6ee51592d19a9babb7b59da05.tar.xz
protocol: fixed MOESI_CMP_directory bug
-rw-r--r--src/mem/protocol/MOESI_CMP_directory-dma.sm3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mem/protocol/MOESI_CMP_directory-dma.sm b/src/mem/protocol/MOESI_CMP_directory-dma.sm
index 74246c730..da10695d0 100644
--- a/src/mem/protocol/MOESI_CMP_directory-dma.sm
+++ b/src/mem/protocol/MOESI_CMP_directory-dma.sm
@@ -98,7 +98,8 @@ machine(DMA, "DMA Controller")
peek( dmaResponseQueue_in, ResponseMsg) {
if (in_msg.Type == CoherenceResponseType:DMA_ACK) {
trigger(Event:DMA_Ack, in_msg.Address);
- } else if (in_msg.Type == CoherenceResponseType:DATA_EXCLUSIVE) {
+ } else if (in_msg.Type == CoherenceResponseType:DATA_EXCLUSIVE ||
+ in_msg.Type == CoherenceResponseType:DATA) {
trigger(Event:Data, in_msg.Address);
} else if (in_msg.Type == CoherenceResponseType:ACK) {
trigger(Event:Inv_Ack, in_msg.Address);