diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mem/packet_queue.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mem/packet_queue.cc b/src/mem/packet_queue.cc index 8030cb38f..e60e77453 100644 --- a/src/mem/packet_queue.cc +++ b/src/mem/packet_queue.cc @@ -113,6 +113,13 @@ PacketQueue::schedSendTiming(PacketPtr pkt, Tick when, bool send_as_snoop) // express snoops should never be queued assert(!pkt->isExpressSnoop()); + // add a very basic sanity check on the port to ensure the + // invisible buffer is not growing beyond reasonable limits + if (transmitList.size() > 100) { + panic("Packet queue %s has grown beyond 100 packets\n", + name()); + } + // nothing on the list, or earlier than current front element, // schedule an event if (transmitList.empty() || when < transmitList.front().tick) { |