Skip site navigation (1)Skip section navigation (2)
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>