If we didn't satisfy all targets, reset the packet we are requesting with.
--HG-- extra : convert_revision : 736372131b046eccf3520292fb3c086dc568d918
This commit is contained in:
parent
9b6fd56dd5
commit
69e183941f
1 changed files with 2 additions and 0 deletions
2
src/mem/cache/miss/miss_queue.cc
vendored
2
src/mem/cache/miss/miss_queue.cc
vendored
|
@ -612,6 +612,8 @@ MissQueue::handleResponse(PacketPtr &pkt, Tick time)
|
||||||
if (mshr->hasTargets()) {
|
if (mshr->hasTargets()) {
|
||||||
// Didn't satisfy all the targets, need to resend
|
// Didn't satisfy all the targets, need to resend
|
||||||
Packet::Command cmd = mshr->getTarget()->cmd;
|
Packet::Command cmd = mshr->getTarget()->cmd;
|
||||||
|
mshr->pkt->setDest(Packet::Broadcast);
|
||||||
|
mshr->pkt->result = Packet::Unknown;
|
||||||
mq.markPending(mshr, cmd);
|
mq.markPending(mshr, cmd);
|
||||||
mshr->order = order++;
|
mshr->order = order++;
|
||||||
cache->setMasterRequest(Request_MSHR, time);
|
cache->setMasterRequest(Request_MSHR, time);
|
||||||
|
|
Loading…
Reference in a new issue