changeset 3a4d1b5cd05c in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=3a4d1b5cd05c
description:
        mem: Pass snoop retries through the CommMonitor

        Allow the monitor to be placed after a snooping port, and do not fail
        on snoop retries, but instead pass them on to the slave port.

diffstat:

 src/mem/comm_monitor.cc |  6 ++++++
 src/mem/comm_monitor.hh |  7 +++++++
 2 files changed, 13 insertions(+), 0 deletions(-)

diffs (40 lines):

diff -r 9261e98e4501 -r 3a4d1b5cd05c src/mem/comm_monitor.cc
--- a/src/mem/comm_monitor.cc   Wed Oct 14 00:29:43 2015 -0500
+++ b/src/mem/comm_monitor.cc   Wed Oct 14 13:32:28 2015 -0400
@@ -344,6 +344,12 @@
     return masterPort.sendTimingSnoopResp(pkt);
 }
 
+void
+CommMonitor::recvRetrySnoopResp()
+{
+    slavePort.sendRetrySnoopResp();
+}
+
 bool
 CommMonitor::isSnooping() const
 {
diff -r 9261e98e4501 -r 3a4d1b5cd05c src/mem/comm_monitor.hh
--- a/src/mem/comm_monitor.hh   Wed Oct 14 00:29:43 2015 -0500
+++ b/src/mem/comm_monitor.hh   Wed Oct 14 13:32:28 2015 -0400
@@ -167,6 +167,11 @@
             mon.recvReqRetry();
         }
 
+        void recvRetrySnoopResp()
+        {
+            mon.recvRetrySnoopResp();
+        }
+
       private:
 
         CommMonitor& mon;
@@ -248,6 +253,8 @@
 
     bool recvTimingSnoopResp(PacketPtr pkt);
 
+    void recvRetrySnoopResp();
+
     AddrRangeList getAddrRanges() const;
 
     bool isSnooping() const;
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to