Call compare and Swap on the target, not the response.

--HG--
extra : convert_revision : 522805fe2c9abaa5ba0d9262ad98f841d90f6452
This commit is contained in:
Ron Dreslinski 2007-03-28 14:38:11 -05:00
parent 55614caecc
commit 8a674bed5c

View file

@ -299,7 +299,7 @@ Cache<TagStore,Coherence>::handleFill(BlkType *blk, PacketPtr &pkt,
target->getPtr<uint8_t>(), target->getSize());
}
} else if (target->isReadWrite()) {
cmpAndSwap(blk, pkt);
cmpAndSwap(blk, target);
} else {
if (pkt->req->isLocked()) {
blk->trackLoadLocked(pkt->req);
@ -390,7 +390,7 @@ Cache<TagStore,Coherence>::handleFill(BlkType *blk, MSHR * mshr,
target->getPtr<uint8_t>(), target->getSize());
}
} else if (target->isReadWrite()) {
cmpAndSwap(blk, pkt);
cmpAndSwap(blk, target);
} else {
if (target->req->isLocked()) {
blk->trackLoadLocked(target->req);