577,579c577,583
< else {
< //Snooping a Coherence Request, do nothing
< return true;
---
> else if (pkt->result == Packet::Nacked) {
> assert(cpu->_status == IcacheWaitResponse);
> pkt->reinitNacked();
> if (!sendTiming(pkt)) {
> cpu->_status = IcacheRetry;
> cpu->ifetch_pkt = pkt;
> }
580a585,586
> //Snooping a Coherence Request, do nothing
> return true;
666,668c672,678
< else {
< //Snooping a coherence req, do nothing
< return true;
---
> else if (pkt->result == Packet::Nacked) {
> assert(cpu->_status == DcacheWaitResponse);
> pkt->reinitNacked();
> if (!sendTiming(pkt)) {
> cpu->_status = DcacheRetry;
> cpu->dcache_pkt = pkt;
> }
669a680,681
> //Snooping a Coherence Request, do nothing
> return true;