git: DragonFly_RELEASE_6_2 sh - Support writes to non-blocking descriptors
Matthew Dillon
dillon at crater.dragonflybsd.org
Sun Nov 13 16:36:34 PST 2022
commit 29231458c89f593fca2ec1580deadc57f6dd10b2
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Sun Jul 3 20:54:42 2022 -0700
sh - Support writes to non-blocking descriptors
* Instead of reporting "write error on stdout", support writes
to non-blocking sockets by having xwrite() use poll() to block
when EAGAIN is returned.
* This is possibly related to such errors appearing in the dsynth
logs. Presumably (unverified), /bin/sh can wind up being executed
with descriptor 1 set to non-blocking. This works fine only as long
as the other end of the pipe is able to drain it quickly enough.
But under heavy loads, this might not happen.
Summary of changes:
bin/sh/output.c | 31 ++++++++++++++++++++++++++++---
bin/sh/output.h | 1 +
2 files changed, 29 insertions(+), 3 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/29231458c89f593fca2ec1580deadc57f6dd10b2
--
DragonFly BSD source repository
More information about the Commits
mailing list