Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1354)

Issue 575593002: Fix QUIC crash on ConnectionClose, protected behind renamed flag (Closed)

Created:
6 years, 3 months ago by ramant (doing other things)
Modified:
6 years, 3 months ago
CC:
chromium-reviews, cbentzel+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@add_LOG_DFATAL_75537267
Project:
chromium
Visibility:
Public.

Description

Fix QUIC crash on ConnectionClose, protected behind renamed flag FLAGS_close_quic_connection_unfinished_streams_2 (defaulted to false). With this change we avoid trying to close the connection while driving the QUIC internal server response pipeline, as the call to SendConnectionClose now happens during PostProcessAfterData, which is only ever called after receiving new data. With a hacky client/QUIC internal server combo (sending > 100 requests, but never sending FIN/RST) I've verified that with this change we don't hit the DFATAL from the attached bug. Still not entirely sure why Chrome would trigger this, b/17402744 is open to investigate why it ever opens more than kMaxStreams. Merge internal change: 75541290 R=rch@chromium.org, rjshade@chromium.org

Patch Set 1 #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+14 lines, -9 lines) Patch
M net/quic/quic_flags.h View 1 chunk +1 line, -1 line 0 comments Download
M net/quic/quic_flags.cc View 1 chunk +1 line, -1 line 3 comments Download
M net/quic/quic_session.cc View 2 chunks +7 lines, -6 lines 0 comments Download
M net/quic/quic_session_test.cc View 2 chunks +5 lines, -1 line 0 comments Download

Messages

Total messages: 5 (0 generated)
ramant (doing other things)
6 years, 3 months ago (2014-09-15 20:08:38 UTC) #1
ramant (doing other things)
https://codereview.chromium.org/575593002/diff/1/net/quic/quic_flags.cc File net/quic/quic_flags.cc (right): https://codereview.chromium.org/575593002/diff/1/net/quic/quic_flags.cc#newcode33 net/quic/quic_flags.cc:33: bool FLAGS_close_quic_connection_unfinished_streams_2 = false; rch/rjshade: should we enable this ...
6 years, 3 months ago (2014-09-15 20:09:26 UTC) #2
Ryan Hamilton
lgtm https://codereview.chromium.org/575593002/diff/1/net/quic/quic_flags.cc File net/quic/quic_flags.cc (right): https://codereview.chromium.org/575593002/diff/1/net/quic/quic_flags.cc#newcode33 net/quic/quic_flags.cc:33: bool FLAGS_close_quic_connection_unfinished_streams_2 = false; On 2014/09/15 20:09:26, ramant ...
6 years, 3 months ago (2014-09-15 21:45:55 UTC) #3
Robbie Shade
On 2014/09/15 21:45:55, Ryan Hamilton wrote: > rjshade: cool with you? Undoubtedly. lgtm.
6 years, 3 months ago (2014-09-15 21:48:09 UTC) #4
ramant (doing other things)
6 years, 3 months ago (2014-09-15 21:49:15 UTC) #5
https://codereview.chromium.org/575593002/diff/1/net/quic/quic_flags.cc
File net/quic/quic_flags.cc (right):

https://codereview.chromium.org/575593002/diff/1/net/quic/quic_flags.cc#newco...
net/quic/quic_flags.cc:33: bool FLAGS_close_quic_connection_unfinished_streams_2
= false;
On 2014/09/15 21:45:55, Ryan Hamilton wrote:
> On 2014/09/15 20:09:26, ramant wrote:
> > rch/rjshade: should we enable this flag in chrome? thanks.
> 
> My recommendation would be to let this run server-side for a while to confirm
> that it's safe, since we're not in any hurry to see this behavior in Chrome.
> rjshade: cool with you?

Cool. thanks

Powered by Google App Engine
This is Rietveld 408576698