The errno value for "Interrupted function call" is returned by system calls that are interrupted by a signal during their execution. This mostly doesn't apply to non-blocking system calls, and also usually doesn't apply when using BSD signal semantics (that is, SA_RESTART is set for the signal's handler, so the system call continues if it can).