diff options
Diffstat (limited to 'ext/sst/ExtSlave.cc')
-rw-r--r-- | ext/sst/ExtSlave.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/ext/sst/ExtSlave.cc b/ext/sst/ExtSlave.cc index 6251ba8d9..0e2f8b438 100644 --- a/ext/sst/ExtSlave.cc +++ b/ext/sst/ExtSlave.cc @@ -128,7 +128,6 @@ ExtSlave::recvTimingReq(PacketPtr pkt) if (simPhase == INIT) { link->sendInitData(ev); - delete pkt->req; delete pkt; } else { if (pkt->needsResponse()) { @@ -176,7 +175,9 @@ ExtSlave::handleEvent(Event* ev) // make Req/Pkt for Snoop/no response needed // presently no consideration for masterId, packet type, flags... - RequestPtr req = new Request(event->getAddr(), event->getSize(), 0, 0); + RequestPtr req = std::make_shared<Request>( + event->getAddr(), event->getSize(), 0, 0); + auto pkt = new Packet(req, ::MemCmd::InvalidateReq); // Clear out bus delay notifications |