/* * Sleep on chan, returning ERESTART if tty changed while we napped and * returning any errors (e.g. EINTR/EWOULDBLOCK) reported by * cv_timedwait(_sig). * If the tty is revoked, restarting a pending call will redo validation done * at the start of the call. * * Must be called with the tty lock held. */