Arla on FreeBSD

Robert Watson rwatson at FreeBSD.org
Thu Feb 15 15:04:40 UTC 2007


On Thu, 15 Feb 2007, Tomas Olsson wrote:

>> Also, you could look at file handle API, that would save you of path 
>> lookups after the vnode is looked up first time (look around for vfs_vptofh 
>> and vfs_fhtovp ops). This API is used by NFS server, so it shall work :).
>>
> That's an idea. We used that before in another context, but then we ran into 
> trouble with too many OSes so we dropped it.  Depends on how much code one 
> can share.

It has been ages since I looked at the xfs/nnpfs internals, but I thought it 
already used file handles to identify cache files to the kernel?  I seem to 
recall several of our fh*() system calls were added by Assar specifically in 
support of Arla work.

With regard to cache files -- historically (i.e., last time I looked closely), 
there was a one-to-one mapping between cache files and files in the Arla 
working set, and all files were transfered "whole" into the local cache. 
This was in contrast to AFS's chunking behavior.  I assume the cache file 
changes to support "lines" in the cache are in support of adding chunking to 
Arla.  Is it the case that one file visible in /afs may now be backed by pages 
coming from different cache files?  How does this interact with the vnode 
pager?  I assume you actually end up with two pagers -- one for the file as 
visible in /afs, and then satisfy the pager's VOP requests by forwarding them 
to the right one of the cache vnodes?  I trust you don't mmap the cache vnode, 
which would lead to cache consistency issues between any mappings of the /afs 
vnode vs the cache vnode?

Any chance we could attract you to BSDCan to meet in person to discuss this? 
:-)

Thanks,

Robert N M Watson
Computer Laboratory
University of Cambridge


More information about the freebsd-fs mailing list