mem: Do not include snoop-filter latency in crossbar occupancy
[gem5.git] / src / mem / addr_mapper.cc
index 0cc2e9c2f230aefa32d1812a00cec33a50832aba..2f00205768e3e8408c5d40a504fc49c727d9cb8d 100644 (file)
@@ -128,9 +128,13 @@ AddrMapper::recvTimingReq(PacketPtr pkt)
     // packets)
     bool successful = masterPort.sendTimingReq(pkt);
 
-    // If not successful, restore the sender state
-    if (!successful && needsResponse) {
-        delete pkt->popSenderState();
+    // If not successful, restore the address and sender state
+    if (!successful) {
+        pkt->setAddr(orig_addr);
+
+        if (needsResponse) {
+            delete pkt->popSenderState();
+        }
     }
 
     return successful;
@@ -190,15 +194,15 @@ AddrMapper::isSnooping() const
 }
 
 void
-AddrMapper::recvRetryMaster()
+AddrMapper::recvReqRetry()
 {
-    slavePort.sendRetry();
+    slavePort.sendRetryReq();
 }
 
 void
-AddrMapper::recvRetrySlave()
+AddrMapper::recvRespRetry()
 {
-    masterPort.sendRetry();
+    masterPort.sendRetryResp();
 }
 
 void