diff -r cb730fd07f83 -r 37a8d7c8af2b src/mem/ruby/system/RubyPort.hh --- a/src/mem/ruby/system/RubyPort.hh Tue Jan 03 18:39:43 2012 -0600 +++ b/src/mem/ruby/system/RubyPort.hh Tue Jan 03 18:41:14 2012 -0600 @@ -147,6 +147,8 @@ uint64_t m_request_cnt; M5Port* physMemPort; + typedef std::vector::iterator CpuPortIter; + std::vector cpu_ports; PhysicalMemory* physmem; RubySystem* ruby_system; diff -r cb730fd07f83 -r 37a8d7c8af2b src/mem/ruby/system/RubyPort.cc --- a/src/mem/ruby/system/RubyPort.cc Tue Jan 03 18:39:43 2012 -0600 +++ b/src/mem/ruby/system/RubyPort.cc Tue Jan 03 18:41:14 2012 -0600 @@ -66,8 +66,10 @@ RubyPort::getPort(const std::string &if_name, int idx) { if (if_name == "port") { - return new M5Port(csprintf("%s-port%d", name(), idx), this, - ruby_system, access_phys_mem); + M5Port* cpuPort = new M5Port(csprintf("%s-port%d", name(), idx), + this, ruby_system, access_phys_mem); + cpu_ports.push_back(cpuPort); + return cpuPort; } if (if_name == "pio_port") {