[prev in list] [next in list] [prev in thread] [next in thread] 

List:       dragonfly-commits
Subject:    git: sh - Support writes to non-blocking descriptors
From:       Matthew Dillon <dillon () crater ! dragonflybsd ! org>
Date:       2022-07-04 5:28:40
Message-ID: 20220704052840.7F5801A34766 () crater ! dragonflybsd ! org
[Download RAW message or body]


commit 8f2ce533369498e3276d110254f9f5e755401db2
Author: Matthew Dillon <dillon@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/8f2ce533369498e3276d110254f9f5e755401db2


-- 
DragonFly BSD source repository
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic