Sequencer.cc (10837:ecbab2522757) Sequencer.cc (10910:32f3d1c454ec)
1/*
2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 63 unchanged lines hidden (view full) ---

72
73Sequencer::~Sequencer()
74{
75}
76
77void
78Sequencer::wakeup()
79{
1/*
2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 63 unchanged lines hidden (view full) ---

72
73Sequencer::~Sequencer()
74{
75}
76
77void
78Sequencer::wakeup()
79{
80 assert(getDrainState() != Drainable::Draining);
80 assert(getDrainState() != DrainState::Draining);
81
82 // Check for deadlock of any of the requests
83 Cycles current_time = curCycle();
84
85 // Check across all outstanding requests
86 int total_outstanding = 0;
87
88 RequestTable::iterator read = m_readRequestTable.begin();

--- 121 unchanged lines hidden (view full) ---

210RequestStatus
211Sequencer::insertRequest(PacketPtr pkt, RubyRequestType request_type)
212{
213 assert(m_outstanding_count ==
214 (m_writeRequestTable.size() + m_readRequestTable.size()));
215
216 // See if we should schedule a deadlock check
217 if (!deadlockCheckEvent.scheduled() &&
81
82 // Check for deadlock of any of the requests
83 Cycles current_time = curCycle();
84
85 // Check across all outstanding requests
86 int total_outstanding = 0;
87
88 RequestTable::iterator read = m_readRequestTable.begin();

--- 121 unchanged lines hidden (view full) ---

210RequestStatus
211Sequencer::insertRequest(PacketPtr pkt, RubyRequestType request_type)
212{
213 assert(m_outstanding_count ==
214 (m_writeRequestTable.size() + m_readRequestTable.size()));
215
216 // See if we should schedule a deadlock check
217 if (!deadlockCheckEvent.scheduled() &&
218 getDrainState() != Drainable::Draining) {
218 getDrainState() != DrainState::Draining) {
219 schedule(deadlockCheckEvent, clockEdge(m_deadlock_threshold));
220 }
221
222 Address line_addr(pkt->getAddr());
223 line_addr.makeLineAddress();
224 // Create a default entry, mapping the address to NULL, the cast is
225 // there to make gcc 4.4 happy
226 RequestTable::value_type default_entry(line_addr,

--- 602 unchanged lines hidden ---
219 schedule(deadlockCheckEvent, clockEdge(m_deadlock_threshold));
220 }
221
222 Address line_addr(pkt->getAddr());
223 line_addr.makeLineAddress();
224 // Create a default entry, mapping the address to NULL, the cast is
225 // there to make gcc 4.4 happy
226 RequestTable::value_type default_entry(line_addr,

--- 602 unchanged lines hidden ---