[net] Populate DNS resolution details to internal load info [chromium/src : main]

0 views
Skip to first unread message

Kenichi Ishibashi (Gerrit)

unread,
Apr 3, 2026, 3:00:07 AM (3 days ago) Apr 3
to Adam Rice, Chromium LUCI CQ, chromium...@chromium.org, bnc+...@chromium.org, net-r...@chromium.org, ricea...@chromium.org
Attention needed from Adam Rice

Kenichi Ishibashi added 1 comment

Patchset-level comments
File-level comment, Patchset 1 (Latest):
Kenichi Ishibashi . resolved

ricea@: PTAL, 2nd CL to populate DNS resolution details, which I want to submit before branch cut.

Open in Gerrit

Related details

Attention is currently required from:
  • Adam Rice
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: Icb5f46524615962b151252ededc0acfebf5f7b92
Gerrit-Change-Number: 7725222
Gerrit-PatchSet: 1
Gerrit-Owner: Kenichi Ishibashi <ba...@chromium.org>
Gerrit-Reviewer: Adam Rice <ri...@chromium.org>
Gerrit-Reviewer: Kenichi Ishibashi <ba...@chromium.org>
Gerrit-Attention: Adam Rice <ri...@chromium.org>
Gerrit-Comment-Date: Fri, 03 Apr 2026 06:59:31 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Andrew Williams (Gerrit)

unread,
Apr 3, 2026, 10:49:37 PM (2 days ago) Apr 3
to Kenichi Ishibashi, Adam Rice, Chromium LUCI CQ, chromium...@chromium.org, bnc+...@chromium.org, net-r...@chromium.org, ricea...@chromium.org
Attention needed from Adam Rice and Kenichi Ishibashi

Andrew Williams added 16 comments

Patchset-level comments
Andrew Williams . resolved

Leaving some feedback and questions

File net/base/load_timing_internal_info.h
Line 73, Patchset 1 (Latest): // this request.
Andrew Williams . unresolved

nit: mention when this can be std::nullopt

File net/quic/quic_chromium_client_session.h
Line 284, Patchset 1 (Latest): // this session.
Andrew Williams . unresolved

nit: mention when this can be std::nullopt here as well

File net/quic/quic_chromium_client_session.cc
Line 1124, Patchset 1 (Latest): resolution_details_ = resolution_details;
Andrew Williams . unresolved

nit: should we just initialize this in the initializer list? Also, we can std::move the std::optional

File net/quic/quic_http_stream_test.cc
Line 340, Patchset 1 (Latest): std::optional<ResolutionDetails> resolution_details = std::nullopt) {
Andrew Williams . unresolved

optional: it seems like the more idiomatic way to set resolution_detail for the tests in this file is to have a member variable that either gets assigned to before the call to Initialize or gets set via a setter like SetRequest / SetResponse

Line 434, Patchset 1 (Latest): /*resolution_details=*/resolution_details,
Andrew Williams . unresolved

nit: no need for the comment here since it's not a literal value

Line 890, Patchset 1 (Latest): EXPECT_EQ(OK, stream_->InitializeStream(true, DEFAULT_PRIORITY,
Andrew Williams . unresolved

nit: looks like it's not done elsewhere but for these new tests it'd be helpful to add `/*can_send_early=*/` for the first parameter

Line 902, Patchset 1 (Latest):TEST_P(QuicHttpStreamTest, PopulateLoadTimingInternalInfo_ReusedStream) {
Andrew Williams . unresolved

Instead of ReusedStream should we say ReusedConnection or ReusedSession or something?

Line 915, Patchset 1 (Latest): {} /* dns_aliases */);
Andrew Williams . unresolved

nit: `/*dns_aliases=*/`

Line 920, Patchset 1 (Latest): callback2.callback()));
Andrew Williams . unresolved

optional: It seems a lot of existing tests also use the pattern of passing a TestCompletionCallback::callback() and not relying on it being called, but it seems like we could more simply use `base::NullCallback()`

Line 926, Patchset 1 (Latest): EXPECT_EQ(ResolutionSource::kSecure,
Andrew Williams . unresolved

Assuming a second stream corresponds to a second request, if that request is made after the DNS resolution for the first request finishes (but before the DNS record expires), wouldn't we expect the ResolutionSource for the second stream to point to the DNS cache?

File net/quic/quic_session_attempt.cc
Line 79, Patchset 1 (Latest): resolution_details_(resolution_details),
Andrew Williams . unresolved

nit: can std::move here

Line 198, Patchset 1 (Latest): std::move(proxy_stream_), std::move(user_agent), net_log(), network_);
Andrew Williams . unresolved

just to double-check, we don't want to pass resolution_details_ for proxied sessions?

File net/quic/quic_session_attempt_manager.cc
Line 87, Patchset 1 (Latest): dns_resolution_details, use_dns_aliases, std::move(dns_aliases),
Andrew Williams . unresolved

nit: can std::move here and below

File net/quic/quic_session_attempt_request.cc
Line 45, Patchset 1 (Latest): dns_resolution_end_time, dns_resolution_details, use_dns_aliases,
Andrew Williams . unresolved

nit: can std::move here as well

File net/quic/quic_session_pool.cc
Line 979, Patchset 1 (Latest): dns_resolution_end_time, dns_resolution_details,
Andrew Williams . unresolved

nit: can std::move here and several places below as well

Open in Gerrit

Related details

Attention is currently required from:
  • Adam Rice
  • Kenichi Ishibashi
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Icb5f46524615962b151252ededc0acfebf5f7b92
    Gerrit-Change-Number: 7725222
    Gerrit-PatchSet: 1
    Gerrit-Owner: Kenichi Ishibashi <ba...@chromium.org>
    Gerrit-Reviewer: Adam Rice <ri...@chromium.org>
    Gerrit-Reviewer: Kenichi Ishibashi <ba...@chromium.org>
    Gerrit-CC: Andrew Williams <awi...@chromium.org>
    Gerrit-Attention: Kenichi Ishibashi <ba...@chromium.org>
    Gerrit-Attention: Adam Rice <ri...@chromium.org>
    Gerrit-Comment-Date: Sat, 04 Apr 2026 02:49:28 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy
    Reply all
    Reply to author
    Forward
    0 new messages