From owner-freebsd-emulation Mon Jan 11 13:30:18 1999 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id NAA03431 for freebsd-emulation-outgoing; Mon, 11 Jan 1999 13:30:18 -0800 (PST) (envelope-from owner-freebsd-emulation@FreeBSD.ORG) Received: from gaia.euronet.nl (gaia.euronet.nl [194.134.0.10]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id NAA03397 for ; Mon, 11 Jan 1999 13:30:12 -0800 (PST) (envelope-from marcel@scc.nl) Received: from scones.sup.scc.nl (i019.ztm.euronet.nl [194.134.112.20]) by gaia.euronet.nl (8.8.8/8.8.8) with ESMTP id WAA15232; Mon, 11 Jan 1999 22:29:36 +0100 (MET) Received: from scc.nl (scones.sup.scc.nl [192.168.2.4]) by scones.sup.scc.nl (8.9.1/8.9.1) with ESMTP id WAA92105; Mon, 11 Jan 1999 22:27:55 +0100 (CET) (envelope-from marcel@scc.nl) Message-ID: <369A6CDA.8A6D114B@scc.nl> Date: Mon, 11 Jan 1999 22:27:54 +0100 From: Marcel Moolenaar Organization: SCC vof X-Mailer: Mozilla 4.5 [en] (X11; I; FreeBSD 3.0-CURRENT i386) X-Accept-Language: en MIME-Version: 1.0 To: Mike Smith CC: Brian Feldman , freebsd-emulation@FreeBSD.ORG Subject: Re: sendmsg() not working?! References: <199901111735.JAA92400@dingo.cdrom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-emulation@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Mike Smith wrote: > > > > The patch Brian posted does do the job, but, IMHO, is not a good basis for > > further finetuning of the sendmsg and recvmsg syscalls. Especially the > > copyout bothers me. Is it worth reimplementing sendmsg and recvmsg or is > > everybody happy with the patch? > > That depends on how you describe "reimplementing". You might want to > shim the generic implementations to make them more friendly to the > Linux layer, but I would not think that reimplementing the bulk of the > syscall in the Linux emulator would be a wise idea. If sendit and recvit in /sys/kern/uipc_syscalls.c would be public, than we could create a linux_sendmsg and linux_recvmsg based on sendmsg and recvmsg and have it call sendit and recvit directly. To eliminate the copyout and also to prevent a copyin of the, possibly large, control message (ancillary data) it would be benificial to seperate the cmsg header from the cmsg data in the lower layers (at least for sending). The only thing that's against such a modification is the impact on the existing code. I'm willing to make the modifications, only if there is a change that such a change would be accepted in the first place. marcel To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-emulation" in the body of the message