*BSD News Article 73783


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!nntp.coast.net!news.kei.com!news.mathworks.com!uunet!in1.uu.net!news.artisoft.com!usenet
From: Terry Lambert <terry@lambert.org>
Newsgroups: comp.os.linux.networking,comp.unix.bsd.netbsd.misc,comp.unix.bsd.freebsd.misc
Subject: Re: TCP latency
Date: Mon, 15 Jul 1996 17:03:50 -0700
Organization: Me
Lines: 43
Message-ID: <31EADC66.57A151A1@lambert.org>
References: <4paedl$4bm@engnews2.eng.sun.com> <31E995B6.573A3461@lambert.org> <4schqh$ssa@panix2.panix.com> <31E9E122.190E8C64@lambert.org> <4scvni$9ab@panix2.panix.com>
NNTP-Posting-Host: hecate.artisoft.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Mailer: Mozilla 2.01 (X11; I; Linux 1.1.76 i486)
Xref: euryale.cc.adfa.oz.au comp.os.linux.networking:45343 comp.unix.bsd.netbsd.misc:4065 comp.unix.bsd.freebsd.misc:23680

Thor Lancelot Simon wrote:
] Cute.  Still, I think my idea above is more general.

It is.  8-).  You'd only want something like this implemented
if you planned on building dedicated server platforms.


] Make sure that MAP_ANON always returns page-aligned memory
] -- it ought to already, but I haven't looked -- and change
] copyin/copyout as I suggested, and don't you get more
] or less what you're describing, without changing any
] existing semantics?

Yes, IFF you are running unified VM/buffer cache.

If you aren't, then I believe there will be a bmap() call
for the memory when it is referenced as a call argument
going up and going back down.

The Linux prevalidation of parameters is clever in this
regard, but it is broken for the kernel preemption case
(only an issue for non-quantum based kernel preemption
and/or fine grain SMP), so it could be an acceptable
trade-off, depending on planned future mainstream direction
for their code.  If the tarket is kernel preemption, then
the trade is probably unacceptable.

The use of the copyinpath() type implementation is clever
as well, but is broken for Unicode or a kernel NFS
implementation, so I class it as a special case as well.

It's best to be sneaky, and then document the interface
if you can instead of trying to bend some general purpose
interface to suit.  You get to show that you are sneaky,
and you get to avoid carring around a bent interface for
the rest of time.  ;-).


                                        Terry Lambert
                                        terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.