From a35dec5bfde351c03973eda04be2d373f65cfe54 Mon Sep 17 00:00:00 2001 From: Guillaume Hetier Date: Wed, 29 Jan 2025 12:29:58 -0800 Subject: [PATCH] Fix call point of QuicRecvBufferTryIncreaseVirtualBufferLength --- src/core/stream_recv.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/core/stream_recv.c b/src/core/stream_recv.c index 2550f39924..b1ff769d0a 100644 --- a/src/core/stream_recv.c +++ b/src/core/stream_recv.c @@ -793,18 +793,19 @@ QuicStreamOnBytesDelivered( // low. // - QuicTraceLogStreamVerbose( - IncreaseRxBuffer, - Stream, - "Increasing max RX buffer size to %u (MinRtt=%llu; TimeNow=%llu; LastUpdate=%llu)", - Stream->RecvBuffer.VirtualBufferLength * 2, - Stream->Connection->Paths[0].MinRtt, - TimeNow, - Stream->RecvWindowLastUpdate); - - QuicRecvBufferIncreaseVirtualBufferLength( + if (QuicRecvBufferTryIncreaseVirtualBufferLength( &Stream->RecvBuffer, - Stream->RecvBuffer.VirtualBufferLength * 2); + Stream->RecvBuffer.VirtualBufferLength * 2)) { + + QuicTraceLogStreamVerbose( + IncreaseRxBuffer, + Stream, + "Increasing max RX buffer size to %u (MinRtt=%llu; TimeNow=%llu; LastUpdate=%llu)", + Stream->RecvBuffer.VirtualBufferLength * 2, + Stream->Connection->Paths[0].MinRtt, + TimeNow, + Stream->RecvWindowLastUpdate); + } } } @@ -873,6 +874,7 @@ QuicStreamRecvFlush( while (FlushRecv) { CXPLAT_DBG_ASSERT(!Stream->Flags.SentStopSending); + // TODO guhetier: Need to allocate a variable nb of buffers QUIC_BUFFER RecvBuffers[3]; QUIC_STREAM_EVENT Event = {0}; Event.Type = QUIC_STREAM_EVENT_RECEIVE;