Date: Fri, 21 May 2021 14:33:25 -0400 From: Mark Johnston <markj@freebsd.org> To: tuexen@freebsd.org Cc: freebsd-transport@freebsd.org Subject: sockbuf locking in sctp_sosend() Message-ID: <YKf89YT3cPk3Q6Li@nuc>
next in thread | raw e-mail | index | archive | help
Hi, As part of an attempt to finally fix races with listen(2), I have some patches which move the socket I/O sx locks out of struct sockbuf and into the owning socket structure. This is a prerequisite for synchronizing socket I/O with listen(2), since most pru_sosend routines acquire the sx lock as their first operation. I noticed though that among pru_sosend implementations, scpt_sosend() is unique in that it does not use sblock() to serialize senders. Is that intentional? I see that sctp_soreceive() uses it.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?YKf89YT3cPk3Q6Li>