From a594ef089370b8073ca9dc5a6b6bf4be9a58a313 Mon Sep 17 00:00:00 2001 From: Evan Shrubsole Date: Wed, 13 Mar 2019 16:38:38 +0100 Subject: [PATCH] Log an error if the RTT is negative Bug: webrtc:10407 Change-Id: I5479cb2b7163c6e9e58854f4ffa7976b3d606da5 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/127568 Commit-Queue: Evan Shrubsole Reviewed-by: Sebastian Jansson Cr-Commit-Position: refs/heads/master@{#27122} --- .../congestion_controller/goog_cc/goog_cc_network_control.cc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/congestion_controller/goog_cc/goog_cc_network_control.cc b/modules/congestion_controller/goog_cc/goog_cc_network_control.cc index 283ca983e9..3d98101398 100644 --- a/modules/congestion_controller/goog_cc/goog_cc_network_control.cc +++ b/modules/congestion_controller/goog_cc/goog_cc_network_control.cc @@ -381,6 +381,11 @@ NetworkControlUpdate GoogCcNetworkController::OnTransportPacketsFeedback( for (const auto& feedback : feedbacks) { TimeDelta feedback_rtt = report.feedback_time - feedback.sent_packet.send_time; + // TODO(bugs.webrtc.org/10407): This should be a DCHECK and never happen + if (feedback_rtt < TimeDelta::Zero()) + RTC_LOG(LS_ERROR) << "negative rtt detected send_time_ms=" + << feedback.sent_packet.send_time.ms() + << " feedback_time_ms=" << report.feedback_time.ms(); TimeDelta min_pending_time = feedback.receive_time - max_recv_time; TimeDelta propagation_rtt = feedback_rtt - min_pending_time; max_feedback_rtt = std::max(max_feedback_rtt, feedback_rtt);