Re: UDP recvmsg blocks after select(), 2.6 bug?

From: H. Peter Anvin
Date: Wed Oct 20 2004 - 17:07:42 EST


Chris Friesen wrote:
H. Peter Anvin wrote:

EIO seems to be The Right Thing[TM]... it pretty much says "yes, we
received something, but it was bad." What isn't clear to me is how
applications react to EIO. It could easily be considered a fatal
error... :-/


From an application point of view, The Right Thing would be to do the checksum validation at select() time if the socket is blocking.

If it's nonblocking, then just do as we do now and return EAGAIN at recvmsg() time.

This would ensure that all existing apps get the expected semantics, but the ones based on blocking sockets would see a performance degredation.


Doing work twice can hardly be considered The Right Thing.

-hpa
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/