-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/2908/
-----------------------------------------------------------

Review request for Default and Ruby Reviewers.


Summary (updated)
-----------------

ruby: Fix checkpointing and restore


Repository: gem5


Description (updated)
-------

ruby: Fix checkpointing and restore

There are 2 problems with the existing checkpoint and restore code in ruby.  
The first is that the event queue is altered by ruby during serialization, 
meaning that the event to stop simulation that always lives on the queue can't 
be found, causing a panic.  This is fixed by explicitly descheduling it before 
swapping events off the main queue.

The other happens occasionally when ruby is serialized after the memory system. 
 In this case the dirty data in ruby's caches is flushed back to memory too 
late and so isn't included in the checkpoint.  This is fixed by adding 
serialization priorities, thus ensuring that ruby can be serialized first, 
perform its flush, and make sure memory has the most up-to-date data before it 
is checkpointed too.


Diffs (updated)
-----

  src/mem/ruby/system/CacheRecorder.cc e4f63f1d502d 
  src/mem/ruby/system/System.cc e4f63f1d502d 
  src/sim/sim_object.hh e4f63f1d502d 
  src/sim/sim_object.cc e4f63f1d502d 

Diff: http://reviews.gem5.org/r/2908/diff/


Testing
-------


Thanks,

Timothy Jones

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

Reply via email to