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



src/mem/ruby/system/System.cc
<http://reviews.gem5.org/r/2627/#comment5166>

    This doesn't seem right. m_phys_mem is SimpleMemory type, which inherits 
empty serialize()/unserialize() functions from the Serializable class. Thus, 
this code doesn't do anything except add the fake backing store header to the 
checkpoint.
    
    Can you elaborate on the situation that suggested you needed this?



src/mem/ruby/system/System.cc
<http://reviews.gem5.org/r/2627/#comment5167>

    This is a problematic way to do this. If the checkpoint was taken with a 
coherence protocol that did not require the fake functional backing store, but 
you're restoring into a protocol that requires it, then m_phys_mem would not 
have been serialized and cannot be unserialized here. You'd run into the panic 
that the fake functional store do not exist in the checkpoint.
    
    To resolve this: If something has changed so that we actually do need to 
serialize the fake functional store (again, I don't understand why), you should 
probably just serialize out the m_access_backing_store variable and unserialize 
it to check whether a fake functional store was saved when taking the 
checkpoint. If it wasn't serialized out, you can't restore it.


- Joel Hestness


On Feb. 9, 2015, 8 p.m., Jason Power wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviews.gem5.org/r/2627/
> -----------------------------------------------------------
> 
> (Updated Feb. 9, 2015, 8 p.m.)
> 
> 
> Review request for Default.
> 
> 
> Repository: gem5
> 
> 
> Description
> -------
> 
> Changeset 10681:b2dc4aee1a0d
> ---------------------------
> Ruby: Update backing store option to propagate through to all RubyPorts
> 
> Previously, the user would have to manually set access_backing_store=True
> on all RubyPorts (Sequencers) in the config files.
> Now, instead there is one global option that each RubyPort checks on
> initialization.
> 
> 
> Diffs
> -----
> 
>   configs/ruby/Ruby.py 7639c17357dc 
>   src/mem/ruby/system/DMASequencer.hh 7639c17357dc 
>   src/mem/ruby/system/DMASequencer.cc 7639c17357dc 
>   src/mem/ruby/system/RubyPort.cc 7639c17357dc 
>   src/mem/ruby/system/RubySystem.py 7639c17357dc 
>   src/mem/ruby/system/Sequencer.py 7639c17357dc 
>   src/mem/ruby/system/System.hh 7639c17357dc 
>   src/mem/ruby/system/System.cc 7639c17357dc 
> 
> Diff: http://reviews.gem5.org/r/2627/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Jason Power
> 
>

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

Reply via email to