::It's been committed before, and broke many things (X and CVSup come to ::mind). I have it compiled in locally on a few machines but it's ::definitely not suitable for general distribution until a solution is ::found that doesn't break applications. :: ::Jason Young ::accessUS Chief Network Engineer : : Hmm.. it doesn't look like anyone tracked down why it was breaking : applications after it was backed out the fist time - July last year : looking at the CVS logs. : : -Matt
Looking at the code more closely, a failure can occur if the amount of data is larger then so->so_snd.sb_hiwat. This situation looks like it can occur if the socket buffer fills up (the sender is faster then the receiver). The solution would be to have a slightly more involved patch. Have a 'tryatomic' variable which is set based on this particular situation and then use it to mean 'atomic' in those cases where no error would occur. I am going to try to reproduce the failure with the original patch and will work up a new patch that fixes it if it winds up being what I think it will be. -Matt To Unsubscribe: send mail to majord...@freebsd.org with "unsubscribe freebsd-hackers" in the body of the message