summaryrefslogtreecommitdiff
path: root/src/mem/bus.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem/bus.cc')
-rw-r--r--src/mem/bus.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mem/bus.cc b/src/mem/bus.cc
index 8040118d2..648b66f4d 100644
--- a/src/mem/bus.cc
+++ b/src/mem/bus.cc
@@ -218,7 +218,10 @@ BaseBus::retryWaiting()
// note that we might have blocked on the receiving port being
// busy (rather than the bus itself) and now call retry before the
// destination called retry on the bus
- retryList.front()->sendRetry();
+ if (dynamic_cast<SlavePort*>(retryList.front()) != NULL)
+ (dynamic_cast<SlavePort*>(retryList.front()))->sendRetry();
+ else
+ (dynamic_cast<MasterPort*>(retryList.front()))->sendRetry();
// If inRetry is still true, sendTiming wasn't called in zero time
// (e.g. the cache does this)