From 843c579402d548f1913a34ed54d9d5638617652f Mon Sep 17 00:00:00 2001 From: F5 Date: Fri, 29 Sep 2023 17:28:27 +0800 Subject: [PATCH] flow-monitor: Fix deadlocks when using the hybrid simulator --- src/flow-monitor/model/flow-monitor.cc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/flow-monitor/model/flow-monitor.cc b/src/flow-monitor/model/flow-monitor.cc index 1223f00d0..0ce5cfa09 100644 --- a/src/flow-monitor/model/flow-monitor.cc +++ b/src/flow-monitor/model/flow-monitor.cc @@ -200,6 +200,9 @@ FlowMonitor::ReportForwarding (Ptr probe, uint32_t flowId, uint32_t p { NS_LOG_WARN ("Received packet forward report (flowId=" << flowId << ", packetId=" << packetId << ") but not known to be transmitted."); +#ifdef NS3_MTP + m_lock.store (false, std::memory_order_release); +#endif return; } @@ -235,6 +238,9 @@ FlowMonitor::ReportLastRx (Ptr probe, uint32_t flowId, uint32_t packe { NS_LOG_WARN ("Received packet last-tx report (flowId=" << flowId << ", packetId=" << packetId << ") but not known to be transmitted."); +#ifdef NS3_MTP + m_lock.store (false, std::memory_order_release); +#endif return; }