No data available
It looks like this error condition is supposed to be used if a read(2) system call is used on a file descriptor in non-blocking mode and no data is ready to be read. However, according to the read(2) man page for the GNU C library, EAGAIN is used in this situation instead.
ENODATA is used in the linux kernel in a few places, however. For example:
- the NTFS and the JFS drivers use it as an error condition in a few places.
- The "Intel CPU Microcode Update driver for Linux" uses this error code.
- The ftape driver returns this on an ECC read failure.