Skip to content

Revert "IO: switch Win32 pipes to PIPE_WAIT and use a sentinel byte"#891

Merged
compnerd merged 1 commit into
swiftlang:release/6.2from
z2oh:revert-866-6.2-pipes
Aug 11, 2025
Merged

Revert "IO: switch Win32 pipes to PIPE_WAIT and use a sentinel byte"#891
compnerd merged 1 commit into
swiftlang:release/6.2from
z2oh:revert-866-6.2-pipes

Conversation

@z2oh

@z2oh z2oh commented Aug 8, 2025

Copy link
Copy Markdown
Contributor

Explanation:
We found some issues with this approach (#882) and have since reverted the PR on main in #883, but it had already been cherry-picked to release/6.2 in #866.

Scope:
libdispatch pipe communication on Windows platform

Issues:
#882

Original PRs:
#866 was the cherry-pick being reverted; #854 was the original PR

Risk:
This will re-introduce a regression in the Windows dispatch pipe handling code that causes a CPU thread to be fully saturated when pipe communication is used. (In other words, will reintroduce this issue #820). It was determined this was the lesser of two bugs compared to #882 which has correctness implications (compared to severe but manageable performance implications).

Testing:
This is a revert PR which removes the ToT change on the release/6.2 branch, so the state of the code will return to a previously tested state. As mentioned above, this will reintroduce the CPU-spinning bug.

Reviewers:
@compnerd

@compnerd

compnerd commented Aug 8, 2025

Copy link
Copy Markdown
Member

@swift-ci please test

@compnerd compnerd merged commit 1a94e80 into swiftlang:release/6.2 Aug 11, 2025
2 checks passed
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.

2 participants