diff options
author | Steve Reinhardt <steve.reinhardt@amd.com> | 2010-09-21 23:07:34 -0700 |
---|---|---|
committer | Steve Reinhardt <steve.reinhardt@amd.com> | 2010-09-21 23:07:34 -0700 |
commit | e9185363804489ce2b84d50fe77ed94f3a5f1e01 (patch) | |
tree | 548ef8a00f15252294a626b728399e4358fc672c /src/mem/packet.hh | |
parent | 0bd9cea34063e4da737af382bb4e3e598448499a (diff) | |
download | gem5-e9185363804489ce2b84d50fe77ed94f3a5f1e01.tar.xz |
cache: improve coherence handling of writebacks
If we write back an exclusive copy, we now mark it
as such, so the cache receiving the writeback can
mark its copy as exclusive. This avoids some
unnecessary upgrade requests when a cache later
tries to re-acquire exclusive access to the block.
Diffstat (limited to 'src/mem/packet.hh')
-rw-r--r-- | src/mem/packet.hh | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mem/packet.hh b/src/mem/packet.hh index cefb7c2ed..48b80879e 100644 --- a/src/mem/packet.hh +++ b/src/mem/packet.hh @@ -422,6 +422,7 @@ class Packet : public FastAlloc, public Printable void setExpressSnoop() { flags.set(EXPRESS_SNOOP); } bool isExpressSnoop() { return flags.isSet(EXPRESS_SNOOP); } void setSupplyExclusive() { flags.set(SUPPLY_EXCLUSIVE); } + void clearSupplyExclusive() { flags.clear(SUPPLY_EXCLUSIVE); } bool isSupplyExclusive() { return flags.isSet(SUPPLY_EXCLUSIVE); } // Network error conditions... encapsulate them as methods since |