Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Jan 1999 19:47:28 -0800 (PST)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Terry Lambert <tlambert@primenet.com>
Cc:        tlambert@primenet.com, pfgiffun@bachue.usc.unal.edu.co, freebsd-hackers@FreeBSD.ORG
Subject:   Re: questions/problems with vm_fault() in Stable
Message-ID:  <199901080347.TAA37034@apollo.backplane.com>

next in thread | raw e-mail | index | archive | help
:...........
:
:My personal preference for this would be to only expose the
:underlying FS layer through a notification layer -- disallow
:the notification layer from the underlying FS having promiscous
:exposure, and allow mounting on top of either a non-exposed OR
:a notification layer that may or may not be exposed.

    The answer is that you need a general purpose cache coherency protocol
    that you can count on to propogate throughout the VFS layering.  *NOT*
    an ad-hoc implemention in one VFS layer and another ad-hoc implementation
    in another.  What the VFS layer does on its backend -- if implementing
    a network protocol such as AFS, NFS, CODA, or something like that, is
    up to it.  Those protocols may have their own cache coherency protocols
    for their network interfaces, but is has very little to do with the 
    cache coherency protocol that needs to be implemented between VFS 
    layers.

:(2)	MNFS manages distribute cache coherency across a network
:	within the context of the existing framework.

    MNFS is an externalized protocol, just as CODA and standard NFS 
    are.   What they implement in their network layer is very different
    from what they have to deal with in their VFS layer.

    For example, lets say you export a UFS filesystem via MNFS.  Ok, fine...
    now lets say you import an MNFS filesystem and then re-export it to
    another machine, and that machine imports it and then re-export 
    it to yet another machine.  Will cache coherency be maintained across 
    the chain with MNFS?  Without a general cache-coherency protocol for
    inter-layer VFS it can't unless MNFS short-circuits the protocol.

    Fine, so now mix protocols... you have a combination of MNFS, AFS, and
    CODA mounts done in a chain.  Lets say each one of these has cache
    coherency.  Will the coherency be maintained across the chain?  Nope,
    it won't.  Not unless the VFS layer implements a general cache 
    coherency protocol that these filesystems use.

    The real power of building a cache coherency protocol into the VFS
    layering is that it allows you to do things you may not have thought of 
    yet.

						-Matt

:					Terry Lambert
:					terry@lambert.org


    Matthew Dillon  Engineering, HiWay Technologies, Inc. & BEST Internet 
                    Communications & God knows what else.
    <dillon@backplane.com> (Please include original email in any response)    

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?199901080347.TAA37034>