diff options
Diffstat (limited to 'src/mem/ruby/network/simple/PerfectSwitch.cc')
-rw-r--r-- | src/mem/ruby/network/simple/PerfectSwitch.cc | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mem/ruby/network/simple/PerfectSwitch.cc b/src/mem/ruby/network/simple/PerfectSwitch.cc index ecd1eb0be..cf2430e36 100644 --- a/src/mem/ruby/network/simple/PerfectSwitch.cc +++ b/src/mem/ruby/network/simple/PerfectSwitch.cc @@ -260,6 +260,10 @@ PerfectSwitch::wakeup() unmodified_msg_ptr = msg_ptr->clone(); } + // Dequeue msg + m_in[incoming][vnet]->dequeue(); + m_pending_message_count[vnet]--; + // Enqueue it - for all outgoing queues for (int i=0; i<output_links.size(); i++) { int outgoing = output_links[i]; @@ -284,10 +288,6 @@ PerfectSwitch::wakeup() m_out[outgoing][vnet]->enqueue(msg_ptr); } - - // Dequeue msg - m_in[incoming][vnet]->dequeue(); - m_pending_message_count[vnet]--; } } } |