On Mon, Mar 8, 2010 at 7:34 PM, Ali Saidi <[email protected]> wrote: >> Aborting atomicAccess completely when a writeback deadlocks results in >> functional errors in the program so I have to do it like this, which >> is more >> efficient anyway. Can anyone foresee any simulation errors resulting >> from >> interrupting writebacks as such that could lead to inconsistencies? > It seems like the writeback should still be scanned by the cache until > it successfully completes, so that doesn't seem like a big problem. > Nothing else comes to mind... Steve?
Actually the writeback buffers are only snooped in timing mode (the code is in snoopTiming() and not in the handleSnoop() code that's common to both atomic and timing modes). Just moving that code into snoopAtomic() wouldn't work, since it checks the writeBuffer structure, and in atomic mode the writeback isn't even put there (it's only stored in the local writebacks list, since normally those writebacks never need to leave the scope of atomicAccess()). Basically you'd have to redo the writeback check for atomic mode. Steve _______________________________________________ m5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/m5-dev
