fix: incorrect parsing of closeFDs option #580
Merged
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.
Refs microsoft/vscode-remote-release#7964
When running strace on the scenarios mentioned in the above issue, the spawn helper was spending a lot of time on closing the inherited file descriptors
node-pty/src/unix/spawn-helper.cc
Lines 58 to 64 in 42b5ce4
VSCode does not use the
closeFDs
option but it was being enabled because of incorrect positional parsing and this PR addresses that.Additionally, if VSCode were to use
closeFDs
option we will hit the above issue as in most cases the soft limit of file handles can easily be in the 100k range. A better approach would be to first check if/proc/pid/fd
is available in the child process and only restrict to closing the descriptors from this location, fallback can be to loop on the rlimit. I will address this in a follow-up PR.