From 3c7e0ec752c1d2c61b9e8c1233bb904d836b4e4e Mon Sep 17 00:00:00 2001 From: Ron Dreslinski Date: Wed, 11 Oct 2006 19:25:48 -0400 Subject: Fix bus in FS mode. src/mem/bus.cc: Add debugging statement src/mem/bus.hh: Fix implementation of bus for subsequent recvTimings while handling a retry request. src/mem/tport.cc: Rework timing port to retry properly --HG-- extra : convert_revision : fbfb5e8b4a625e49c6cd764da1df46a4f336b1b2 --- src/mem/bus.hh | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src/mem/bus.hh') diff --git a/src/mem/bus.hh b/src/mem/bus.hh index a168c3c49..b1cbbe1e3 100644 --- a/src/mem/bus.hh +++ b/src/mem/bus.hh @@ -224,13 +224,15 @@ class Bus : public MemObject port->onRetryList(true); retryList.push_back(port); } else { - // The device was retrying a packet. It didn't work, so we'll leave - // it at the head of the retry list. - inRetry = false; - -/* // We shouldn't be receiving a packet from one port when a different - // one is retrying. - assert(port == retryingPort);*/ + if (port->onRetryList()) { + // The device was retrying a packet. It didn't work, so we'll leave + // it at the head of the retry list. + assert(port == retryList.front()); + inRetry = false; + } + else { + retryList.push_back(port); + } } } -- cgit v1.2.3