mem: Add check for block status on WriteLineReq fill
More checks to help with understanding of functionality.
This commit is contained in:
parent
012dd52dc2
commit
a9a7002a3b
1 changed files with 10 additions and 0 deletions
10
src/mem/cache/cache.cc
vendored
10
src/mem/cache/cache.cc
vendored
|
@ -1657,6 +1657,16 @@ Cache::handleFill(PacketPtr pkt, CacheBlk *blk, PacketList &writebacks)
|
||||||
blk->status |= BlkSecure;
|
blk->status |= BlkSecure;
|
||||||
blk->status |= BlkValid | BlkReadable;
|
blk->status |= BlkValid | BlkReadable;
|
||||||
|
|
||||||
|
// sanity check for whole-line writes, which should always be
|
||||||
|
// marked as writable as part of the fill, and then later marked
|
||||||
|
// dirty as part of satisfyCpuSideRequest
|
||||||
|
if (pkt->cmd == MemCmd::WriteLineReq) {
|
||||||
|
assert(!pkt->sharedAsserted());
|
||||||
|
// at the moment other caches do not respond to the
|
||||||
|
// invalidation requests corresponding to a whole-line write
|
||||||
|
assert(!pkt->memInhibitAsserted());
|
||||||
|
}
|
||||||
|
|
||||||
if (!pkt->sharedAsserted()) {
|
if (!pkt->sharedAsserted()) {
|
||||||
// we could get non-shared responses from memory (rather than
|
// we could get non-shared responses from memory (rather than
|
||||||
// a cache) even in a read-only cache, note that we set this
|
// a cache) even in a read-only cache, note that we set this
|
||||||
|
|
Loading…
Reference in a new issue