Fix CreateInstance failure when Windows hosts file exceeds message size cap (2.7 backport)#40726
Merged
Merged
Conversation
…ze cap (#40718) On Windows 10 where DNS tunneling is unavailable, the hosts file content is embedded in the configuration message sent to the guest init. If the hosts file exceeds the message size safety check (added in 2.7.x), the guest rejects it causing E_UNEXPECTED. Fix by: - Skipping the hosts file content if it exceeds 8MB, with a user warning - Bumping the message size cap from 4MB to 16MB as additional headroom Fixes #40696 Fixes #40700 Fixes #40699 Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR backports the fix for WSL CreateInstance failures caused by embedding an oversized Windows hosts file into the init/config message on Windows 10 (where DNS tunneling isn’t available), and increases the socket receive-side message size safety cap to provide additional headroom.
Changes:
- Add a size guard in
GetWindowsHosts()to skip embedding the parsed hosts content when it grows beyond a configured threshold (logging instead). - Increase the shared socket
RecvMessage()maximum accepted message size from 4 MiB to 16 MiB.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| src/windows/common/filesystem.cpp | Adds an early-return guard to stop embedding very large parsed Windows hosts content. |
| src/shared/inc/socketshared.h | Raises the receive-side socket message size cap to 16 MiB. |
OneBlue
approved these changes
Jun 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cherry-pick of #40718 for the 2.7 release branch.
Changes from master:
Fixes #40696
Fixes #40700
Fixes #40699