changeset 52bcc301b467 in /z/repo/m5
details: http://repo.m5sim.org/m5?cmd=changeset;node=52bcc301b467
description:
        Use ReadResp instead of LoadLockedResp for LoadLockedReq responses.

diffstat:

2 files changed, 3 insertions(+), 2 deletions(-)
src/cpu/simple/timing.cc |    2 +-
src/mem/packet.cc        |    3 ++-

diffs (44 lines):

diff -r c1f203a35cc3 -r 52bcc301b467 src/cpu/simple/timing.cc
--- a/src/cpu/simple/timing.cc  Tue Jul 15 14:38:51 2008 -0400
+++ b/src/cpu/simple/timing.cc  Tue Jul 15 14:38:51 2008 -0400
@@ -730,7 +730,9 @@
         traceData = NULL;
     }
 
-    if (pkt->isRead() && pkt->isLocked()) {
+    // the locked flag may be cleared on the response packet, so check
+    // pkt->req and not pkt to see if it was a load-locked
+    if (pkt->isRead() && pkt->req->isLocked()) {
         TheISA::handleLockedRead(thread, pkt->req);
     }
 
diff -r c1f203a35cc3 -r 52bcc301b467 src/mem/packet.cc
--- a/src/mem/packet.cc Tue Jul 15 14:38:51 2008 -0400
+++ b/src/mem/packet.cc Tue Jul 15 14:38:51 2008 -0400
@@ -101,12 +101,10 @@
     /* ReadExResp */
     { SET4(IsRead, NeedsExclusive, IsResponse, HasData),
             InvalidCmd, "ReadExResp" },
-    /* LoadLockedReq */
+    /* LoadLockedReq: note that we use plain ReadResp as response, so that
+     *                we can also use ReadRespWithInvalidate when needed */
     { SET4(IsRead, IsLocked, IsRequest, NeedsResponse),
-            LoadLockedResp, "LoadLockedReq" },
-    /* LoadLockedResp */
-    { SET4(IsRead, IsLocked, IsResponse, HasData),
-            InvalidCmd, "LoadLockedResp" },
+            ReadResp, "LoadLockedReq" },
     /* StoreCondReq */
     { SET6(IsWrite, NeedsExclusive, IsLocked,
            IsRequest, NeedsResponse, HasData),
diff -r c1f203a35cc3 -r 52bcc301b467 src/mem/packet.hh
--- a/src/mem/packet.hh Tue Jul 15 14:38:51 2008 -0400
+++ b/src/mem/packet.hh Tue Jul 15 14:38:51 2008 -0400
@@ -81,7 +81,6 @@
         ReadExReq,
         ReadExResp,
         LoadLockedReq,
-        LoadLockedResp,
         StoreCondReq,
         StoreCondResp,
         SwapReq,
_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to