Not a data message
The linux kernel itself appears to never generate this error message.
The POSIX standard says:
- EBADMSG
- Bad message. During a read(2), getmsg(2), getpmsg(2), or ioctl(2) I_RECVFD request to a STREAMS device, a message arrived at the head of the STREAM that is inappropriate for the function receiving the message.
- read(2)
- Message waiting to be read on a STREAM is not a data message.