The TAP PMD treats the kernel returning EAGAIN because its queue is full as an error. This is incorrect, the PMD should just quietly return the number of mbufs successfully sent.