diff options
-rw-r--r-- | src/mem/cache/cache_impl.hh | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mem/cache/cache_impl.hh b/src/mem/cache/cache_impl.hh index 8f7938b93..2be41642d 100644 --- a/src/mem/cache/cache_impl.hh +++ b/src/mem/cache/cache_impl.hh @@ -366,7 +366,7 @@ Cache<TagStore>::recvTimingSnoopResp(PacketPtr pkt) // must be cache-to-cache response from upper to lower level ForwardResponseRecord *rec = - dynamic_cast<ForwardResponseRecord *>(pkt->popSenderState()); + dynamic_cast<ForwardResponseRecord *>(pkt->senderState); assert(!system->bypassCaches()); if (rec == NULL) { @@ -379,6 +379,7 @@ Cache<TagStore>::recvTimingSnoopResp(PacketPtr pkt) return; } + pkt->popSenderState(); pkt->setDest(rec->prevSrc); delete rec; // @todo someone should pay for this |