Date: Wed, 28 Mar 2001 08:34:53 +0100 From: David Malone <dwmalone@maths.tcd.ie> To: Brian Somers <brian@Awfulhak.org> Cc: David Malone <dwmalone@maths.tcd.ie>, freebsd-hackers@freebsd.org, freebsd-alpha@freebsd.org, wpaul@freebsd.org Subject: Re: Control messages. Message-ID: <200103280835.aa82064@salmon.maths.tcd.ie> In-Reply-To: Your message of "Tue, 27 Mar 2001 17:41:19 BST." <200103271641.f2RGfJL00975@hak.lan.Awfulhak.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> I can't see where in the kernel we're *not* using CMSG_DATA(). This > was fixed a while ago and tested ok on beast (for 3 descriptors > AFAIR). Are we looking at the same code (I'm looking in /sys/kern) ? Have a look in uipc_usrreq.c:unp_internalize(), it uses (cm+1) to find where the data is to be written out in the CREDS case and uses (cm+1) to find where the descriptors start in the RIGHTS case. The reallocation code seems to be broken (it attaches a cluster to a mbuf it is still using, currupting the data in the mbuf). If I enable it on the 386, where it is unnecessaey usually, and pass about 50 discriptors I get a panic. I've had a look at what other people have done about this issue. The NetBSD people seem to have taken the fix I'm proposing. Solaris and BSD/OS don't provide the required alignment and just define CMSG_DATA(cm) to be (cm+1). David. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi? <200103280835.aa82064>