Deprecate --gfe2_reloadable_flag_quic_bbr2_fix_spurious_loss_bytes_counting.

PiperOrigin-RevId: 616843446
diff --git a/quiche/common/quiche_feature_flags_list.h b/quiche/common/quiche_feature_flags_list.h
index 344acc9..3011ae0 100755
--- a/quiche/common/quiche_feature_flags_list.h
+++ b/quiche/common/quiche_feature_flags_list.h
@@ -15,7 +15,6 @@
 QUICHE_FLAG(bool, quiche_reloadable_flag_quic_add_stream_info_to_idle_close_detail, false, "If true, include stream information in idle timeout connection close detail.")
 QUICHE_FLAG(bool, quiche_reloadable_flag_quic_allow_client_enabled_bbr_v2, true, "If true, allow client to enable BBRv2 on server via connection option 'B2ON'.")
 QUICHE_FLAG(bool, quiche_reloadable_flag_quic_bbr2_extra_acked_window, false, "When true, the BBR4 copt sets the extra_acked window to 20 RTTs and BBR5 sets it to 40 RTTs.")
-QUICHE_FLAG(bool, quiche_reloadable_flag_quic_bbr2_fix_spurious_loss_bytes_counting, true, "If true, fix a QUIC BBR2 bytes counting issue caused by spurious losses.")
 QUICHE_FLAG(bool, quiche_reloadable_flag_quic_bbr2_probe_two_rounds, true, "When true, the BB2U copt causes BBR2 to wait two rounds with out draining the queue before exiting PROBE_UP and BB2S has the same effect in STARTUP.")
 QUICHE_FLAG(bool, quiche_reloadable_flag_quic_bbr2_simplify_inflight_hi, true, "When true, the BBHI copt causes QUIC BBRv2 to use a simpler algorithm for raising inflight_hi in PROBE_UP.")
 QUICHE_FLAG(bool, quiche_reloadable_flag_quic_block_until_settings_received_copt, true, "If enabled and a BSUS connection is received, blocks server connections until SETTINGS frame is received.")
diff --git a/quiche/quic/core/congestion_control/bandwidth_sampler.cc b/quiche/quic/core/congestion_control/bandwidth_sampler.cc
index e79a106..05687d7 100644
--- a/quiche/quic/core/congestion_control/bandwidth_sampler.cc
+++ b/quiche/quic/core/congestion_control/bandwidth_sampler.cc
@@ -301,9 +301,7 @@
   SendTimeState last_acked_packet_send_state;
   QuicBandwidth max_send_rate = QuicBandwidth::Zero();
   for (const auto& packet : acked_packets) {
-    if (GetQuicReloadableFlag(quic_bbr2_fix_spurious_loss_bytes_counting) &&
-        packet.spurious_loss) {
-      QUIC_RELOADABLE_FLAG_COUNT(quic_bbr2_fix_spurious_loss_bytes_counting);
+    if (packet.spurious_loss) {
       // If the packet has been detected as lost before, QuicSentPacketManager
       // should set the AckedPacket.bytes_acked to 0 before passing the packet
       // to the congestion controller.
diff --git a/quiche/quic/core/congestion_control/bbr2_misc.cc b/quiche/quic/core/congestion_control/bbr2_misc.cc
index 75be707..ff614ab 100644
--- a/quiche/quic/core/congestion_control/bbr2_misc.cc
+++ b/quiche/quic/core/congestion_control/bbr2_misc.cc
@@ -153,19 +153,11 @@
         congestion_event->prior_bytes_in_flight -
         congestion_event->bytes_acked - congestion_event->bytes_lost;
   } else {
-    if (GetQuicReloadableFlag(quic_bbr2_fix_spurious_loss_bytes_counting)) {
-      QUIC_BUG(quic_bbr2_prior_in_flight_too_small)
-          << "prior_bytes_in_flight:" << congestion_event->prior_bytes_in_flight
-          << " is smaller than the sum of bytes_acked:"
-          << congestion_event->bytes_acked
-          << " and bytes_lost:" << congestion_event->bytes_lost;
-    } else {
-      QUIC_LOG_FIRST_N(ERROR, 1)
-          << "prior_bytes_in_flight:" << congestion_event->prior_bytes_in_flight
-          << " is smaller than the sum of bytes_acked:"
-          << congestion_event->bytes_acked
-          << " and bytes_lost:" << congestion_event->bytes_lost;
-    }
+    QUIC_BUG(quic_bbr2_prior_in_flight_too_small)
+        << "prior_bytes_in_flight:" << congestion_event->prior_bytes_in_flight
+        << " is smaller than the sum of bytes_acked:"
+        << congestion_event->bytes_acked
+        << " and bytes_lost:" << congestion_event->bytes_lost;
     congestion_event->bytes_in_flight = 0;
   }
 
diff --git a/quiche/quic/core/congestion_control/bbr2_simulator_test.cc b/quiche/quic/core/congestion_control/bbr2_simulator_test.cc
index f9bc24a..76bd106 100644
--- a/quiche/quic/core/congestion_control/bbr2_simulator_test.cc
+++ b/quiche/quic/core/congestion_control/bbr2_simulator_test.cc
@@ -1888,16 +1888,9 @@
   sender_->OnCongestionEvent(false, sender_unacked_map()->bytes_in_flight(),
                              now, acked_packets, {}, 0, 0);
 
-  if (GetQuicReloadableFlag(quic_bbr2_fix_spurious_loss_bytes_counting)) {
-    EXPECT_EQ(sender_->GetNetworkModel().total_bytes_sent(),
-              sender_->GetNetworkModel().total_bytes_acked() +
-                  sender_->GetNetworkModel().total_bytes_lost());
-  } else {
-    // This is the bug fixed by the flag.
-    EXPECT_LT(sender_->GetNetworkModel().total_bytes_sent(),
-              sender_->GetNetworkModel().total_bytes_acked() +
-                  sender_->GetNetworkModel().total_bytes_lost());
-  }
+  EXPECT_EQ(sender_->GetNetworkModel().total_bytes_sent(),
+            sender_->GetNetworkModel().total_bytes_acked() +
+                sender_->GetNetworkModel().total_bytes_lost());
 }
 
 // After quiescence, if the sender is in PROBE_RTT, it should transition to
diff --git a/quiche/quic/core/quic_flags_list.h b/quiche/quic/core/quic_flags_list.h
index d2b1864..5b7ab92 100644
--- a/quiche/quic/core/quic_flags_list.h
+++ b/quiche/quic/core/quic_flags_list.h
@@ -75,8 +75,6 @@
 QUIC_FLAG(quic_reloadable_flag_quic_new_error_code_when_packets_buffered_too_long, true)
 // If true, enable server retransmittable on wire PING.
 QUIC_FLAG(quic_reloadable_flag_quic_enable_server_on_wire_ping, true)
-// If true, fix a QUIC BBR2 bytes counting issue caused by spurious losses.
-QUIC_FLAG(quic_reloadable_flag_quic_bbr2_fix_spurious_loss_bytes_counting, true)
 // If true, include stream information in idle timeout connection close detail.
 QUIC_FLAG(quic_reloadable_flag_quic_add_stream_info_to_idle_close_detail, true)
 // If true, reject or send error response code upon receiving invalid request or response headers.