anchor.diff:  
   (defun %fill-ibuf (buf fd &optional timeout)
     (when timeout
  -    (let ((status
  +    (let ((readablep
              (iomux:wait-until-fd-ready fd :read timeout)))
  -      ;; FIXME signal something better
  -      (cond ((member :timeout status)
  -             (return-from %fill-ibuf :timeout))
  -            ((member :error status)
  -             (error "WAIT-UNTIL-FD-READY returned :ERROR on FD ~S" fd)))))
  +      (unless readablep
  +        (return-from %fill-ibuf :timeout))))
     (let ((num (et:repeat-upon-eintr
                  (et:read fd (iobuf-end-pointer buf)
                           (iobuf-end-space-length buf)))))
  
positive.code:              (buffer-emptyp ()
                 (when (iobuf-empty-p buf)
                   (iobuf-reset buf) t))
               (errorp () (member :error (iomux:wait-until-fd-ready fd :write))))
        (loop :until (buffer-emptyp) :do (write-or-return)
           :finally (return (values t bytes-written))))))
  
  
negative.code:                    ;; FIXME signal something better -- maybe analyze the status
                     (return-from %write-n-bytes (values nil :fail)))))
               (buffer-emptyp () (= bytes-written nbytes))
               (errorp () (handler-case (iomux:wait-until-fd-ready fd :write)
                            (iomux:poll-error ()))))
        (loop :until (buffer-emptyp) :do (write-or-return)
           :finally (return (values t bytes-written))))))
  
  