On Mon, 3 Aug 2015, Jason Power wrote:



On July 12, 2015, 3:29 p.m., Joel Hestness wrote:
src/mem/ruby/system/Sequencer.cc, line 323
<http://reviews.gem5.org/r/2953/diff/1/?file=47948#file47948line323>

    To keep things clean, could we also remove the clearLocked, isLocked, and 
setLocked functions from the CacheMemory, since they are only used where you've 
changed code?

Nilay Vaish wrote:
    Somebody might be using them.  It does not hurt us at all to leave them in 
place.

Joel Hestness wrote:
    Sure. In that case, could you add a comment near their declarations in 
CacheMemory that the suggested functions for handling LL/SC are now in 
CacheEntry?

To me, it seems dangerous to leave the functions in CacheMemory. Correct me if I'm wrong, but if you call m_dataCache_ptr->setLocked() and then e->clearLocked() you'll have a major problem. Said another way, if you combine using the cache entry and the cache memory implementations it won't work.

As of now, I think things would work fine since both the functions work on the same variable.


My suggestion: Implement CacheMemory::*Locked by calling the AbstractEntry 
functions.

I'll make this change.


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

Reply via email to