diff --git a/src/mem/cache/cache.cc b/src/mem/cache/cache.cc index e9b909646e..724ccc7d6c 100644 --- a/src/mem/cache/cache.cc +++ b/src/mem/cache/cache.cc @@ -966,7 +966,8 @@ Cache::getBusPacket(PacketPtr cpu_pkt, CacheBlk *blk, // 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