Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Feb 2001 18:42:30 -0800
From:      Peter Wemm <peter@netplex.com.au>
To:        Terry Lambert <tlambert@primenet.com>
Cc:        patl@phoenix.volant.org (Pat Lashley), freebsd-fs@FreeBSD.ORG
Subject:   Re: Status of nullfs 
Message-ID:  <200102230242.f1N2gUf43386@mobile.wemm.org>
In-Reply-To: <200102222215.PAA26750@usr05.primenet.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
Terry Lambert wrote:
> > The man page in -STABLE for mount_null contains dire warnings about
> > its lack of support and potential to cause problems.  But how
> > solid/shakey is it really?  Is it, in practice, safe to use?  Is
> > there any particular usage that is more likely to cause problems,
> > or are the warnings just there because nobody is actively keeping
> > it up to date?
> > 
> > In other words, if I'm willing to take the risk of using it, just
> > how big of a risk am I actually taking?
> 
> Any mmap'ed writes will fail due to cache coherency problems.  If
> the system isn't quiescent long enough to flush everything out
> before an unmount, you can panic.  If you have exposed the NULL
> mount , e.g. by mounting an FS on /usr, and then nullfs mounting
> it to /null_usr, then modifications to the /usr FS will not
> result in coherency notification, and files will become corrupt,
> if accessed both ways.  Paging from executables can cause problems
> for multiple copies of executables, if statically initialized data
> is modified (copy on write) due to the way backing page handling
> is limited.
> 
> All of these derive from the fact that the vnode in the upper
> layer (nullfs) and the vnode in the lower layer (ffs or whatever)
> have seperate vm_object_t's, even though the data contents of the
> file are supposed to be treated as identical for both.

Terry, please check your facts.  This has been recently fixed.  See the
VOP_GETVOBJECT() stuff.  The trick though is to get it MFC'ed into
4.x...

> There are a number of patches to manually enforce coherency; as
> far as I know, they don't deal with the pager path, and, since
> the coherency is explicit, the /usr vs. /null_usr problem is
> not resolved.  Check the list archives to obtain the patches.

nullfs is fully functional in -current.  Backporting the changes should
be easy.

Cheers,
-Peter
--
Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au
"All of this is for nothing if we don't go to the stars" - JMS/B5


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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200102230242.f1N2gUf43386>