No need to keep trying to request the data bus if we are already waiting.
--HG-- extra : convert_revision : dbaad52ed8d0841dc9224661e3df0d8ef4989aa3
This commit is contained in:
parent
df3014a726
commit
fdaed2c7ae
1 changed files with 5 additions and 1 deletions
6
src/mem/cache/base_cache.cc
vendored
6
src/mem/cache/base_cache.cc
vendored
|
@ -211,7 +211,11 @@ BaseCache::CacheEvent::process()
|
||||||
//Know the packet to send
|
//Know the packet to send
|
||||||
pkt->result = Packet::Success;
|
pkt->result = Packet::Success;
|
||||||
pkt->makeTimingResponse();
|
pkt->makeTimingResponse();
|
||||||
if (!cachePort->sendTiming(pkt)) {
|
if (!drainList.empty()) {
|
||||||
|
//Already blocked waiting for bus, just append
|
||||||
|
cachePort->drainList.push_back(pkt);
|
||||||
|
}
|
||||||
|
else if (!cachePort->sendTiming(pkt)) {
|
||||||
//It failed, save it to list of drain events
|
//It failed, save it to list of drain events
|
||||||
cachePort->drainList.push_back(pkt);
|
cachePort->drainList.push_back(pkt);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue