*BSD News Article 56837


Return to BSD News archive

Newsgroups: comp.unix.bsd.bsdi.misc
Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!news.rmit.EDU.AU!news.unimelb.EDU.AU!munnari.OZ.AU!spool.mu.edu!howland.reston.ans.net!nntp.coast.net!lll-winken.llnl.gov!fnnews.fnal.gov!gw1.att.com!nntpa!not-for-mail
From: dyson@inuxs.inh.att.com (John S. Dyson)
Subject: Re: BSDI 2.0.1 swapspace leak fix?
Message-ID: <DJL6wn.8F7@nntpa.cb.att.com>
Sender: news@nntpa.cb.att.com (Netnews Administration)
Nntp-Posting-Host: inuxs.inh.att.com
Organization: AT&T
References: <4a0hk0$20d@news2.ucsd.edu> <4afu71$ai@picasso.op.net> <4akj9p$5m2@helena.MT.net> <4amvp8$eqs@web.ddp.state.me.us>
Date: Thu, 14 Dec 1995 17:21:58 GMT
Lines: 38

In article <4amvp8$eqs@web.ddp.state.me.us>,
David Miller <isdmill@gatekeeper.ddp.state.me.us> wrote:
>Nate Williams (nate@trout.sri.MT.net) wrote:
>: In article <4afu71$ai@picasso.op.net>,
>: Bruce Momjian <root@candle.pha.pa.us> wrote:
>: >David Bauman (david@terra.igcom.net) wrote:
>: [ Swap space leak ]
>
>: >I worked with Mike Karels to identify the bug in 1.0.  He has looked
>: >into it and talked to the initial Mach developer and the solution is not
>: >easy.  It exists in all 386 BSD implementions as far as I know.
>
>: It is fixed in FreeBSD by completely re-writing the VM system from
>: scratch.  Along with this a whole hoard of bugs were fixed when the VM
>: buffer cache and free memory pool became integrated as well.  I/O
>: performance of FreeBSD systems really scream now. :)
>
>What version of FreeBSD? 2.1?
>
Well, David Greenman and I did not *totally* rewrite the VM system.  It is
more of an evolution such that the change eventually will be an essentially
total rewrite.  The copyrights, etc still attribute the original author(s)
because of the nature of our changes.  The "collapse" problem and related
bugs are fixed as of FreeBSD V2.0.5 -- 2.1 is a bugfix and enhancement
type release over V2.0.5.  The -current code (will be V2.2) has diverged
significantly again to provide more features and performance.

The "collapse" problem can be worked around a bit by some clever changes, but
to fix it in its entirety is definitely an exercise in data structures.  Not
only did we thread the vm_object data structures backwards to allow for
easier collapsing, but the swap pager had to be made page addressible for
it's metadata (for efficiency -- disk to disk collapsing is probably too
expensive.)

John
dyson@freebsd.org