Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 5 Mar 1998 14:05:00 -0500 (EST)
From:      "Ron G. Minnich" <rminnich@Sarnoff.COM>
To:        "John S. Dyson" <toor@dyson.iquest.net>
Cc:        hackers@FreeBSD.ORG
Subject:   vm architecture of freebsd. 
Message-ID:  <Pine.SUN.3.91.980305135658.3052D-100000@terra>
In-Reply-To: <199803050138.UAA03356@dyson.iquest.net>

next in thread | previous in thread | raw e-mail | index | archive | help

On Wed, 4 Mar 1998, John S. Dyson wrote:
> What exactly are the specific problems that need to be fixed? 

actually, there's a very long note I sent years ago to the freebsd list on
the problems. There are implementation problems, problems with VFS
interaction (e.g. NFS), but the ones which caused me trouble are
architectural. 

example: last time I checked, you can msync an mmap'ed page, and if it is
backed by NFS, the page is not really purged. The next time you fault on
the page, it's just pulled out of the NFS block cache. That's wrong. But
it's hard to fix because the VM system can't tell the VFS that it should
purge the page from its cache: the information is not available in the
arguments to the VFS from the VM. 

Follow the VM fault path: at each level, information is added as more is 
learned, but not all the information is passed down to the lower levels, 
such as faulting VA, fault type, etc. This is I suppose good Information 
Hiding policy, but it's bad for my needs. Also the VM tends to not 
consult the underlying object for a number of cases, the worst one being 
that if a write fault occurs on a read-only page, the VM will tend to 
add write access without asking the VFS is that is ok. For an example of 
how the VM ought to work, see, e.g. SunOS. Yes, I'm serious. 

Anyway this is a years old discussion I have gone into on this group 
about once a year, so if there are archives more detail is in them. Since 
Chuck Cranor has basically resolved my problems in Open- and Net-BSD, I'm 
not as concerned with FreeBSD VM limitations at this point ...

I also provided some fixes for the VM to support the MNFS that ran on 
2.0.5R, but these were never adopted. 

thanks
ron

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SUN.3.91.980305135658.3052D-100000>