mem: Create a request copy for deferred snoops
authorStephan Diestelhorst <stephan.diestelhorst@ARM.com>
Tue, 17 Mar 2015 11:50:55 +0000 (11:50 +0000)
committerStephan Diestelhorst <stephan.diestelhorst@ARM.com>
Tue, 17 Mar 2015 11:50:55 +0000 (11:50 +0000)
commit2847d5f5177304236dcdbab112a0369f0bd96aea
treeec99cb6bb885cd97a6eb81cb07bc1710b3e348fb
parent706597f021811511e71fddeeab7dcfc33bfd5f35
mem: Create a request copy for deferred snoops

Sometimes, we need to defer an express snoop in an MSHR, but the original
request might complete and deallocate the original pkt->req.  In those cases,
create a copy of the request so that someone who is inspecting the delayed
snoop can also inspect the request still.  All of this is rather hacky, but the
allocation / linking and general life-time management of Packet and Request is
rather tricky.  Deleting the copy is another tricky area, testing so far has
shown that the right copy is deleted at the right time.
src/mem/cache/cache_impl.hh
src/mem/cache/mshr.cc