mem: Add forward snoop check for HardPFReqs
authorAli Jafri <ali.jafri@arm.com>
Tue, 5 May 2015 07:22:25 +0000 (03:22 -0400)
committerAli Jafri <ali.jafri@arm.com>
Tue, 5 May 2015 07:22:25 +0000 (03:22 -0400)
We should always check whether the cache is supposed to be forwarding snoops
before generating snoops.

src/mem/cache/cache_impl.hh

index 6817db41ef0ee151460d53bd4022de623cf2a392..5e6eccec87ad077172d9a1a8bed7b7ef4e524b76 100644 (file)
@@ -1950,7 +1950,7 @@ Cache::getTimingPacket()
     } else {
         CacheBlk *blk = tags->findBlock(mshr->blkAddr, mshr->isSecure);
 
-        if (tgt_pkt->cmd == MemCmd::HardPFReq) {
+        if (tgt_pkt->cmd == MemCmd::HardPFReq && forwardSnoops) {
             // We need to check the caches above us to verify that
             // they don't have a copy of this block in the dirty state
             // at the moment. Without this check we could get a stale