changeset 4e195fb9ec4f in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=4e195fb9ec4f
description:
mem: Ensure that InvalidateReq is not forwarded as ReadExReq
This patch fixes an issue where an InvalidationReq only traversed one
level of the cache hierarchy, and was subsequently turned into a
ReadExReq due to it needing writable, and the command not being
checked for explicitly.
diffstat:
src/mem/cache/cache.cc | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diffs (13 lines):
diff -r bfc1285c61eb -r 4e195fb9ec4f src/mem/cache/cache.cc
--- a/src/mem/cache/cache.cc Wed Feb 24 04:16:55 2016 -0500
+++ b/src/mem/cache/cache.cc Wed Feb 24 04:16:57 2016 -0500
@@ -966,7 +966,8 @@
// where the determination the StoreCond fails is delayed due to
// all caches not being on the same local bus.
cmd = MemCmd::SCUpgradeFailReq;
- } else if (cpu_pkt->cmd == MemCmd::WriteLineReq) {
+ } else if (cpu_pkt->cmd == MemCmd::WriteLineReq ||
+ cpu_pkt->cmd == MemCmd::InvalidateReq) {
// forward as invalidate to all other caches, this gives us
// the line in Exclusive state, and invalidates all other
// copies
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev