If more than one process or thread are writing to the same TCP socket, and one write calls wait_for_tcp_memory(), the socket lock will be dropped and reacquired. This appears to open a window where the second writer can put its data in the middle of the first writer's data. Assuming I have this correctly, is this a bug that should be fixed in tcp_sendmsg() or should the callers' guarantee the atomicity themselves? John Byrne - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org