Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 Oct 2007 23:33:53 +0000
From:      "Aryeh Friedman" <aryeh.friedman@gmail.com>
To:        "Randall Stewart" <rrs@cisco.com>
Cc:        current@freebsd.org, Martin Kulas <coolaz@web.de>
Subject:   Re: [SCTP][patch] socket does not wake up
Message-ID:  <bef9a7920710031633t1ec52618s1904103f04befc5d@mail.gmail.com>
In-Reply-To: <47041CE2.60603@cisco.com>
References:  <20071003141412.GA1311@thunderbird.tld> <47041CE2.60603@cisco.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 10/3/07, Randall Stewart <rrs@cisco.com> wrote:
> Martin:
>
> Thanks for the patch.. note that I will submit it to
> re for approval after a minor fix.
>
> socantrcvmore(so);
>
> assumes you do NOT hold a lock.  This code holds
> the socket lock.. which is the recv sockbuf lock..
>
> So if you turn witness on your kernel and run with this
> you will have a double lock.. panic.
>
> Note to fix this right you should have it be:
>                                 SOCK_UNLOCK(so);
> +                               socantrcvmore(so);
>
> Which is what I will submit to release ops.. you may want
> to change this in what you are working with so you don;t
> have some other side-effect issue from the double lock.. like
> leaking sockets.

Does this solve the many issues with warning messages and syn/ack
being received after close and such?  Also I think this might also be
related to the re(3) patch I mentioned in an other thread



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bef9a7920710031633t1ec52618s1904103f04befc5d>