Skip to content

quiche: inherit PMTUD on runtime paths - #2573

Open
idy wants to merge 1 commit into
cloudflare:masterfrom
idy:fix/runtime-path-pmtud
Open

quiche: inherit PMTUD on runtime paths#2573
idy wants to merge 1 commit into
cloudflare:masterfrom
idy:fix/runtime-path-pmtud

Conversation

@idy

@idy idy commented Aug 7, 2026

Copy link
Copy Markdown

What changed

  • retain the effective PMTUD enablement and maximum-probe settings on each connection;
  • initialize PMTUD state on client- and server-created runtime paths;
  • defer PMTU probes until the new path completes QUIC path validation; and
  • cover both runtime path constructors with a migration regression test.

Why

The initial path is created with Some(config) and receives PMTUD state, but
paths created after the handshake pass None to Path::new. A migrated
connection therefore cannot discover or revalidate the replacement path's MTU.

This intentionally does not include the send-path state correction proposed in
#2566.

Closes #2572.

Validation

  • cargo +nightly fmt --all -- --check
  • cargo test -p quiche runtime_paths_inherit_pmtud_configuration --lib
Connections configured for PMTU discovery currently create migration paths without PMTUD state, so path revalidation cannot measure the replacement route.

- Persist the effective PMTUD enablement and probe-attempt settings on the connection
- Initialize client- and server-created runtime paths with PMTUD state
- Defer PMTU probes until the new path has completed QUIC validation
- Add migration coverage for both runtime path constructors

Generated with [Codex](https://github.com/openai)
@idy
idy marked this pull request as ready for review August 7, 2026 04:44
@idy
idy requested a review from a team as a code owner August 7, 2026 04:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant