-
Notifications
You must be signed in to change notification settings - Fork 102
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
stdout/stderr remain open after forking into the background #294
Comments
We used to do that and ferry io back to the launcher process, but that proved error prone. Somewhat related to #271 |
That seems perfectly reasonable to me. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
It seems that dhcpcd doesn't close stout and stderr before forking off its children/background processes. This means that if some software runs
/etc/rc.d/dhcpcd start | SOMETHING
will never exit. It is somewhat ironic that last year I was almost complaining about stdout was closed when hooks were trying to print things out.The pipe construct is quite useful to record the output from
/etc/rc.d/dhcpcd start
so that it can be displayed to the user in the event that something goes wrong while trying to start the dhcpcd service. The Azure agent for Linux (NetBSD) stops and starts the system DHCP client in order to run its own DHCP client if it can't get the azure endpoint from the system DHCP client. I have a perfectly reasonable workaround for this problem with the Azure agent, but I figure I should report the problem anyway because leaving stdout/stderr open is untidy at the least.I'm assuming in the following session that process 1231 was the original dhcpcd that forked all the others off.
The text was updated successfully, but these errors were encountered: