diff options
author | imarom <imarom@cisco.com> | 2015-11-08 16:37:44 +0200 |
---|---|---|
committer | imarom <imarom@cisco.com> | 2015-11-08 16:37:44 +0200 |
commit | 5021dd5d8338e24557038d6c4ddc2f666d677903 (patch) | |
tree | 62669917feaa7c1d3ae677b75c79dec6ef04ecde /src | |
parent | 38dc2db83370ee9d2483a09f4451a5c0f1167cee (diff) |
tests golden were updated because main loop
exit model has changed
(sometimes one more packet was written to the dump file)
Diffstat (limited to 'src')
-rwxr-xr-x | src/bp_sim.cpp | 11 | ||||
-rw-r--r-- | src/stateless/dp/trex_stateless_dp_core.cpp | 1 |
2 files changed, 6 insertions, 6 deletions
diff --git a/src/bp_sim.cpp b/src/bp_sim.cpp index 65dba06d..479f0982 100755 --- a/src/bp_sim.cpp +++ b/src/bp_sim.cpp @@ -3412,7 +3412,7 @@ int CNodeGenerator::flush_file(dsec_t max_time, * if a positive value was given to max time * schedule an exit node */ - if (max_time > 0) { + if ( (max_time > 0) && (!always) ) { CGenNode *exit_node = thread->create_node(); exit_node->m_type = CGenNode::EXIT_SCHED; @@ -3420,7 +3420,7 @@ int CNodeGenerator::flush_file(dsec_t max_time, add_node(exit_node); } - while (true) { + while (!m_p_queue.empty()) { node = m_p_queue.top(); n_time = node->m_time + offset; @@ -3532,9 +3532,6 @@ int CNodeGenerator::flush_file(dsec_t max_time, } - /* cleanup */ - remove_all(thread); - if (!always) { old_offset =offset; }else{ @@ -3611,8 +3608,10 @@ CNodeGenerator::handle_slow_messages(uint8_t type, } } else if ( type == CGenNode::EXIT_SCHED ) { + m_p_queue.pop(); + thread->free_node(node); exit_scheduler = true; - + } else { printf(" ERROR type is not valid %d \n",type); assert(0); diff --git a/src/stateless/dp/trex_stateless_dp_core.cpp b/src/stateless/dp/trex_stateless_dp_core.cpp index 35ce43a8..b2bd0152 100644 --- a/src/stateless/dp/trex_stateless_dp_core.cpp +++ b/src/stateless/dp/trex_stateless_dp_core.cpp @@ -76,6 +76,7 @@ TrexStatelessDpCore::start_scheduler() { double old_offset = 0.0; m_core->m_node_gen.flush_file(-1, 0.0, false, m_core, old_offset); + m_core->m_node_gen.close_file(m_core); } void |