Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(udp): make GRO (i.e. URO) optional on Windows, off by default #2092

Merged
merged 3 commits into from
Dec 17, 2024

Conversation

mxinden
Copy link
Collaborator

@mxinden mxinden commented Dec 16, 2024

We have multiple bug reports for GRO (i.e. URO) on Windows with no solution in sight.

While it previously seemed like this might be bound to Windows on ARM only, that assumption can no longer be made, see e.g. #2041 (comment) and Bugzilla comment. Thus our previous attempt (#2071) is not enough.

I suggest by default disabling GRO (i.e. URO) on all of Windows, with an advanced option for users to enable it via UdpSocketState::set_gro(true).

Users that control their hardware, i.e. know the hardware supports URO, can enable it.

Users that want to implement a heuristic, as e.g. suggested by @thomaseizinger in #2041 (comment), can enable or disable it programmatically.

Reverts #2071.
Tracked in #2041

Copy link
Contributor

@thomaseizinger thomaseizinger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

Thanks Max!

@mxinden mxinden force-pushed the optional-uro branch 3 times, most recently from dcfd040 to 344382a Compare December 16, 2024 13:43
@mxinden mxinden marked this pull request as ready for review December 16, 2024 15:27
@mxinden mxinden requested a review from Ralith as a code owner December 16, 2024 15:27
We have multiple bug reports for URO on Windows, including non-ARM. See:

- quinn-rs#2041
- https://bugzilla.mozilla.org/show_bug.cgi?id=1916558

Instead of enabling GRO on Windows by default, this commit changes the default
to off, adding a `set_gro` to optionally enable it.
@djc djc added this pull request to the merge queue Dec 17, 2024
Merged via the queue into quinn-rs:main with commit 6ee883a Dec 17, 2024
18 checks passed
@mxinden
Copy link
Collaborator Author

mxinden commented Dec 18, 2024

Thank you for the quick help here @djc @Ralith and @thomaseizinger!

@djc @Ralith could either of you publish quinn-udp v0.5.9 to crates.io? The crate's patch version is already increased as part of this pull request.

@djc
Copy link
Member

djc commented Dec 18, 2024

Yup, getting to it in ~15m!

@djc
Copy link
Member

djc commented Dec 18, 2024

  • Published quinn-udp v0.5.9 at registry crates-io
  • [new tag] quinn-udp-0.5.9 -> quinn-udp-0.5.9
  • Release notes

ErichDonGubler pushed a commit to erichdongubler-mozilla/firefox that referenced this pull request Dec 19, 2024
…chain-reviewers

`quinn-udp` `v0.5.9` contains another fix for Bug 1916558, disabling URO on
Windows all together. See quinn-rs/quinn#2092.

In addition `quinn-udp` `v0.5.9` unblocks Bug 1933904 through
quinn-rs/quinn#2079.

Differential Revision: https://phabricator.services.mozilla.com/D232475
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Dec 19, 2024
…chain-reviewers

`quinn-udp` `v0.5.9` contains another fix for Bug 1916558, disabling URO on
Windows all together. See quinn-rs/quinn#2092.

In addition `quinn-udp` `v0.5.9` unblocks Bug 1933904 through
quinn-rs/quinn#2079.

Differential Revision: https://phabricator.services.mozilla.com/D232475
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Jan 1, 2025
…chain-reviewers

`quinn-udp` `v0.5.9` contains another fix for Bug 1916558, disabling URO on
Windows all together. See quinn-rs/quinn#2092.

In addition `quinn-udp` `v0.5.9` unblocks Bug 1933904 through
quinn-rs/quinn#2079.

Differential Revision: https://phabricator.services.mozilla.com/D232475

UltraBlame original commit: 4cb4b627f721017c65b6705ebfdac2c8663f747f
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Jan 1, 2025
…chain-reviewers

`quinn-udp` `v0.5.9` contains another fix for Bug 1916558, disabling URO on
Windows all together. See quinn-rs/quinn#2092.

In addition `quinn-udp` `v0.5.9` unblocks Bug 1933904 through
quinn-rs/quinn#2079.

Differential Revision: https://phabricator.services.mozilla.com/D232475

UltraBlame original commit: 4cb4b627f721017c65b6705ebfdac2c8663f747f
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Jan 1, 2025
…chain-reviewers

`quinn-udp` `v0.5.9` contains another fix for Bug 1916558, disabling URO on
Windows all together. See quinn-rs/quinn#2092.

In addition `quinn-udp` `v0.5.9` unblocks Bug 1933904 through
quinn-rs/quinn#2079.

Differential Revision: https://phabricator.services.mozilla.com/D232475

UltraBlame original commit: 4cb4b627f721017c65b6705ebfdac2c8663f747f
i3roly pushed a commit to i3roly/firefox-dynasty that referenced this pull request Jan 2, 2025
…chain-reviewers

`quinn-udp` `v0.5.9` contains another fix for Bug 1916558, disabling URO on
Windows all together. See quinn-rs/quinn#2092.

In addition `quinn-udp` `v0.5.9` unblocks Bug 1933904 through
quinn-rs/quinn#2079.

Differential Revision: https://phabricator.services.mozilla.com/D232475
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants