> On Aug. 12, 2012, 9:39 a.m., Ali Saidi wrote: > > This doesn't work. startup is only called before tick 0, so if you restore > > from a checkpoint these events won't got created. by the time loadstate is > > called the system should be all connected up > > > > Nilay Vaish wrote: > Following comment appears in sim_object.hh. As per this, startup() would > be called after > the state has been unserialized. And I did run an Alpha simulation to > check if the function > setupFuncEvents() is getting called or not. In both situations, when > starting bare bones > and when starting from a checkpoint, the function was called. > > /** > * startup() is the final initialization call before simulation. > * All state is initialized (including unserialized state, if any, > * such as the curTick() value), so this is the appropriate place to > * schedule initial event(s) for objects that need them. > */ > virtual void startup();
Ok... I stand corrected, but there are still some issues. alpha/linux/system.cc still uses initState() for linux specific func events... as do arm/system, arm/linux/system, sparc, & x86. If there is a problem with the code in alpha with initState() function all these are going to have issues too, however fixing them would get rid of the entire point of loadState and initState, so it seems like load/initState should just make sure the memory is appropriately setup. Why isn't it? - Ali ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://reviews.gem5.org/r/1345/#review3260 ----------------------------------------------------------- On Aug. 12, 2012, 9:14 a.m., Nilay Vaish wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://reviews.gem5.org/r/1345/ > ----------------------------------------------------------- > > (Updated Aug. 12, 2012, 9:14 a.m.) > > > Review request for Default. > > > Description > ------- > > Changeset 9149:56533035907f > --------------------------- > Alpha System: override startup(), instead of loadState() > Alpha System was overriding loadState() function to setup some functional > event. This is not correct since it is not known if the memory has been > correctly setup. This was also happening in the initState() function. With > this patch, Alpha System overrides the startup() function, and sets up > functional events in this function. > > > Diffs > ----- > > src/arch/alpha/system.hh a7a72f42919e > src/arch/alpha/system.cc a7a72f42919e > > Diff: http://reviews.gem5.org/r/1345/diff/ > > > Testing > ------- > > > Thanks, > > Nilay Vaish > > _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
