diff -r 6efb37480d87 -r d3bb9d95bf76 src/mem/ruby/system/RubyPort.hh --- a/src/mem/ruby/system/RubyPort.hh Fri Dec 05 22:37:03 2014 -0800 +++ b/src/mem/ruby/system/RubyPort.hh Tue Dec 09 09:22:37 2014 -0600 @@ -184,13 +184,6 @@ System* system; private: - void addToRetryList(MemSlavePort * port) - { - assert(std::find(retryList.begin(), retryList.end(), port) == - retryList.end()); - retryList.push_back(port); - } - unsigned int getChildDrainCount(DrainManager *dm); PioMasterPort pioMasterPort; @@ -205,12 +198,6 @@ std::vector master_ports; DrainManager *drainManager; - - // - // Based on similar code in the M5 bus. Stores pointers to those ports - // that should be called when the Sequencer becomes available after a stall. - // - std::vector retryList; }; #endif // __MEM_RUBY_SYSTEM_RUBYPORT_HH__ diff -r 6efb37480d87 -r d3bb9d95bf76 src/mem/ruby/system/RubyPort.cc --- a/src/mem/ruby/system/RubyPort.cc Fri Dec 05 22:37:03 2014 -0800 +++ b/src/mem/ruby/system/RubyPort.cc Tue Dec 09 09:22:37 2014 -0600 @@ -264,17 +264,8 @@ return true; } - // - // Unless one is using the ruby tester, record the stalled M5 port for - // later retry when the sequencer becomes free. - // - if (!ruby_port->m_usingRubyTester) { - ruby_port->addToRetryList(this); - } - DPRINTF(RubyPort, "Request for address %#x did not issued because %s\n", pkt->getAddr(), RequestStatus_to_string(requestStatus)); - return false; } @@ -346,33 +337,8 @@ // As it has not yet been turned around, the source field tells us // which port it came from. assert(pkt->getSrc() < slave_ports.size()); - slave_ports[pkt->getSrc()]->hitCallback(pkt); - // - // If we had to stall the MemSlavePorts, wake them up because the sequencer - // likely has free resources now. - // - if (!retryList.empty()) { - // - // Record the current list of ports to retry on a temporary list before - // calling sendRetry on those ports. sendRetry will cause an - // immediate retry, which may result in the ports being put back on the - // list. Therefore we want to clear the retryList before calling - // sendRetry. - // - std::vector curRetryList(retryList); - - retryList.clear(); - - for (auto i = curRetryList.begin(); i != curRetryList.end(); ++i) { - DPRINTF(RubyPort, - "Sequencer may now be free. SendRetry to port %s\n", - (*i)->name()); - (*i)->sendRetry(); - } - } - testDrainComplete(); }