gfe-relnote: deprecate gfe2_reloadable_flag_quic_writevdata_at_level PiperOrigin-RevId: 305040543 Change-Id: I1fa92bc74403ffd1f06e352fb107c37284950669
diff --git a/quic/core/quic_crypto_stream.cc b/quic/core/quic_crypto_stream.cc index 094613c..73584b5 100644 --- a/quic/core/quic_crypto_stream.cc +++ b/quic/core/quic_crypto_stream.cc
@@ -38,8 +38,7 @@ substreams_{{{this, ENCRYPTION_INITIAL}, {this, ENCRYPTION_HANDSHAKE}, {this, ENCRYPTION_ZERO_RTT}, - {this, ENCRYPTION_FORWARD_SECURE}}}, - writevdata_at_level_(GetQuicReloadableFlag(quic_writevdata_at_level)) { + {this, ENCRYPTION_FORWARD_SECURE}}} { // The crypto stream is exempt from connection level flow control. DisableConnectionFlowControlForThisStream(); } @@ -283,33 +282,9 @@ pending.offset = retransmission.begin()->min(); pending.length = retransmission.begin()->max() - retransmission.begin()->min(); - QuicConsumedData consumed(0, false); - if (!writevdata_at_level_) { - EncryptionLevel current_encryption_level = - session()->connection()->encryption_level(); - // Set appropriate encryption level. - session()->connection()->SetDefaultEncryptionLevel( - retransmission_encryption_level); - consumed = stream_delegate()->WritevData( - id(), pending.length, pending.offset, NO_FIN, - HANDSHAKE_RETRANSMISSION, QuicheNullOpt); - QUIC_DVLOG(1) << ENDPOINT << "stream " << id() - << " tries to retransmit stream data [" << pending.offset - << ", " << pending.offset + pending.length - << ") with encryption level: " - << retransmission_encryption_level - << ", consumed: " << consumed; - OnStreamFrameRetransmitted(pending.offset, consumed.bytes_consumed, - consumed.fin_consumed); - // Restore encryption level. - session()->connection()->SetDefaultEncryptionLevel( - current_encryption_level); - } else { - QUIC_RELOADABLE_FLAG_COUNT_N(quic_writevdata_at_level, 1, 2); - consumed = RetransmitStreamDataAtLevel(pending.offset, pending.length, - retransmission_encryption_level, - HANDSHAKE_RETRANSMISSION); - } + QuicConsumedData consumed = RetransmitStreamDataAtLevel( + pending.offset, pending.length, retransmission_encryption_level, + HANDSHAKE_RETRANSMISSION); if (consumed.bytes_consumed < pending.length) { // The connection is write blocked. break; @@ -334,35 +309,12 @@ } } retransmission.Difference(bytes_acked()); - EncryptionLevel current_encryption_level = - session()->connection()->encryption_level(); for (const auto& interval : retransmission) { QuicStreamOffset retransmission_offset = interval.min(); QuicByteCount retransmission_length = interval.max() - interval.min(); - QuicConsumedData consumed(0, false); - if (!writevdata_at_level_) { - // Set appropriate encryption level. - session()->connection()->SetDefaultEncryptionLevel(send_encryption_level); - consumed = stream_delegate()->WritevData(id(), retransmission_length, - retransmission_offset, NO_FIN, - type, QuicheNullOpt); - QUIC_DVLOG(1) << ENDPOINT << "stream " << id() - << " is forced to retransmit stream data [" - << retransmission_offset << ", " - << retransmission_offset + retransmission_length - << "), with encryption level: " << send_encryption_level - << ", consumed: " << consumed; - OnStreamFrameRetransmitted(retransmission_offset, consumed.bytes_consumed, - consumed.fin_consumed); - // Restore encryption level. - session()->connection()->SetDefaultEncryptionLevel( - current_encryption_level); - } else { - QUIC_RELOADABLE_FLAG_COUNT_N(quic_writevdata_at_level, 2, 2); - consumed = RetransmitStreamDataAtLevel(retransmission_offset, - retransmission_length, - send_encryption_level, type); - } + QuicConsumedData consumed = RetransmitStreamDataAtLevel( + retransmission_offset, retransmission_length, send_encryption_level, + type); if (consumed.bytes_consumed < retransmission_length) { // The connection is write blocked. return false; @@ -378,7 +330,6 @@ EncryptionLevel encryption_level, TransmissionType type) { DCHECK_EQ(HANDSHAKE_RETRANSMISSION, type); - DCHECK(writevdata_at_level_); const auto consumed = stream_delegate()->WritevData( id(), retransmission_length, retransmission_offset, NO_FIN, type, encryption_level);
diff --git a/quic/core/quic_crypto_stream.h b/quic/core/quic_crypto_stream.h index 82f81fe..23f7dfc 100644 --- a/quic/core/quic_crypto_stream.h +++ b/quic/core/quic_crypto_stream.h
@@ -197,9 +197,6 @@ // Keeps state for data sent/received in CRYPTO frames at each encryption // level. std::array<CryptoSubstream, NUM_ENCRYPTION_LEVELS> substreams_; - - // Latched value of gfe2_reloadable_flag_quic_writevdata_at_level. - const bool writevdata_at_level_; }; } // namespace quic