Subject: Re: ufs-ism in lookup(9)
To: der Mouse <mouse@Rodents.Montreal.QC.CA>
From: Jaromir Dolecek <jdolecek@NetBSD.org>
List: tech-kern
Date: 04/06/2004 11:18:01
der Mouse wrote:
[ Charset ISO-8859-1 unsupported, converting... ]
> >> I think we have two, remote and local.
> > i think "remove vs local" is too aggressive simplification.
> 
> I agree.
> 
> Consider a disk image in a file on an NFS filesystem, which is backing
> a vnd, a partition of which is mounted as an FFS filesystem.

There are two cases I can see:

1. 'remote' or 'shared' - changes in filesystem are not fully controlled
   by local OS and every operation must be confirmed with some kind
   of remote server
2. 'local' or 'exclusive' - the access to filesystem is fully controlled
   by the local OS (doesn't matter if the filesystem resides on a NFS file
   or iSCSI volume or local disk storage)
   
So really, there are just two main cases.

Some 'remote' filesystem might need different semantics to others
regarding to name caching (i.e. smbfs can lock files, nqnfs can
use leases etc), but at least all 'local' filesystems have exactly
same semantics AFAICS.

I do believe that duplicating the same code in every file-system
is not TRT. It's painful to realize the differences when you do
the merge. (Speaking of personal experience from cache_lookup()
handling code merge).

Jaromir
-- 
Jaromir Dolecek <jdolecek@NetBSD.org>            http://www.NetBSD.cz/
-=- We should be mindful of the potential goal, but as the Buddhist -=-
-=- masters say, ``You may notice during meditation that you        -=-
-=- sometimes levitate or glow.   Do not let this distract you.''   -=-