Date: Thu, 22 Jul 1999 15:10:25 -0700 (PDT) From: Matthew Dillon <dillon@apollo.backplane.com> To: "Jason Young" <doogie@anet-stl.com>, "Papezik Milon" <papezik@pvt.net>, <hackers@FreeBSD.ORG> Subject: Re: RE: Squid - a bug in src/sys/kern/uipc_socket.c Message-ID: <199907222210.PAA88151@apollo.backplane.com> References: <000501bed48b$3de34600$8a9791d1@y> <199907222200.PAA88061@apollo.backplane.com>
next in thread | previous in thread | raw e-mail | index | archive | help
::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 majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199907222210.PAA88151>