ruby: Add fine grained LL/SC to ruby
Review Request #1541 - Created Nov. 20, 2012 and discarded - Latest diff uploaded
| Information | |
|---|---|
| Mitch Hayenga | |
| gem5 | |
| Reviewers | |
| Default | |
This patch fixes 3 issues with Ruby. 1) It adds fine-grained locks, so that stores to a cacheline that don't overlap a locked region do not invalidate locks. 2) It maintains a list of locks (as opposed to a single id). This helps guarantee that at least one thread will succeed (forward progress). 3) It properly invalidates the locks during the transition from SM to IM in the MESI protocol (this was missing).
Dibakar Gope claims it works.
