(1)-- LL by thread 2. lock = 2 (load linked)
===============> any
operation here to that address will cause SC to fail due to isLocked logic
in SC
(2) --SC by thread 2 . lock = -1 (store conditional)
^
| (3) -- LL by thread 3. lock = 3
| (4) -- SC by thread 3 . lock = -1
|
| CR } at this point both thread 2 and 3 are in CR.
|
V
(5) -ST . lock =-1
Is the above scenario possible? I am not able to find logic that will
prevent thread 3 from executing LL and SC.
~ Anusha
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users