On Tue, 23 Jun 2015, Gross, Joe wrote:

Hello,

I'm having a problem correctly running a config that was generated by using the 
config ini loading mechanism. The binary was built using --with-cxx-config. It 
then runs correctly and generates a config.ini file in the m5out directory 
(when configuring using python/swig). However, when it is rerun using the same 
config.ini file as an input, it prints the following error message:

Config problem in sim object system.ruby.network: Object isn't a mem object and 
so can have slave port: slave[2]

This is reported by the CxxConfigManager as it tries to reconnect all the ports 
that are described in the ini file.

I believe the reason is that SimpleNetwork inherits from Network and there are 
no slave ports to get, at least not via the method that CxxConfigManager is 
trying to use. Changing Network to inherit from MemObject and overriding the 
getSlavePort() call does not help because I don't see any ports to retrieve.

This was working somewhere around gem5-dev, r9559, but appears to have broken 
since then. Looking through the Network and SimpleNetwork and cxx_config 
changes since it last worked, there is nothing obvious that would have caused 
this problem, but quite a lot has changed. There have been quite a few changes 
to Network and it seems likely that one of these broke the ability to restore a 
SimpleNetwork from a config.ini file. In any case, if the system can be 
configured by python and generate an ini file then it should be able to be 
regenerated from that same ini file.

Nilay, since you seem to have been working on these files and may know what has 
changed, do you have any insights?


Joe, look at how things are being done in src/python/swig/pyobject.cc and modify src/sim/cxx_manager.cc accordingly.

--
Nilay
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to