diff -r f40ed85037c3 -r a11f79b70e42 src/mem/cache/cache_impl.hh --- a/src/mem/cache/cache_impl.hh Wed Feb 26 10:53:30 2014 +0000 +++ b/src/mem/cache/cache_impl.hh Wed Feb 26 10:53:31 2014 +0000 @@ -183,8 +183,8 @@ pkt->assertMemInhibit(); } // on ReadExReq we give up our copy unconditionally - assert(blk != tempBlock); - tags->invalidate(blk); + if (blk != tempBlock) + tags->invalidate(blk); blk->invalidate(); } else if (blk->isWritable() && !pending_downgrade && !pkt->sharedAsserted() && !pkt->req->isInstFetch()) { @@ -1456,8 +1456,8 @@ // Do this last in case it deallocates block data or something // like that if (invalidate) { - assert(blk != tempBlock); - tags->invalidate(blk); + if (blk != tempBlock) + tags->invalidate(blk); blk->invalidate(); }