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

Enable recursive fd redirection for popen logic. #5898

Merged
merged 1 commit into from Oct 27, 2019

Conversation

@headius
Copy link
Member

headius commented Sep 30, 2019

See #5865

The logic here was disabled because it makes changes to file descriptors in the parent process, which could cause a race if multiple threads try to popen using the same descriptors. However the race only affects subprocess launching and the mostly-inert CLOEXEC descriptor flag, so I think any possible problems can be mitigated easily.

Note we also are not consistent about setting CLOEXEC right now anyway, owing to the JVM's hiding of many descriptors. CLOEXEC cleanup and serializing these changes in popen can come later (if they're needed).

See #5865
@headius headius added this to the JRuby 9.2.9.0 milestone Sep 30, 2019
@headius headius merged commit a81ab18 into jruby:master Oct 27, 2019
5 checks passed
5 checks passed
continuous-integration/travis-ci/pr The Travis CI build passed
Details
jruby.jruby Build #20190930.3 succeeded
Details
jruby.jruby (Job linux) Job linux succeeded
Details
jruby.jruby (Job mac) Job mac succeeded
Details
jruby.jruby (Job windows) Job windows succeeded
Details
@headius headius deleted the headius:popen_recursive_redirect branch Oct 27, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

1 participant
You can’t perform that action at this time.