Coda File System

Re: Coda requires concessions from the file system

From: Robert Forsman <thoth_at_purplefrog.com>
Date: Fri, 16 Feb 2001 11:09:21 -0500
Jan Harkes <jaharkes_at_cs.cmu.edu> ,in message <20010216104403.B5300_at_cs.cmu.edu>,
	 wrote: 

> On Fri, Feb 16, 2001 at 10:24:02AM -0500, Robert Forsman wrote:
> > Greg Troxel <gdt_at_fnord.ir.bbn.com> ,in message <rmi1ysykdw7.fsf_at_fnord.ir.bb
>> n.co
> > 	m>, wrote: 
> > 
> > > There is a mild argument for avoiding mounts in /.  Long ago, I used
> > > systems with fs foo on machine bar in /nfs/bar/foo.  This had the
> > > advantage that 'ls -l /' didn't hang the system in the case of a dead
> > > server.  With coda, this should be temporary and only last 30 seconds
> > > or so when it goes down, so this isn't so serious.
> > 
> >   I'm sure that nobody will mind waiting 30 seconds for "pwd" to return.
> 
> 'pwd' doesn't try to get the attributes of /coda, except when it is run
> from within /coda and then you have the 30 second timeout anyways.

  Wiggy.  pwd on linux works nothing like the old days.

  Back in the old days pwd did its job by statting "../*" to get the inode
and see if "../whatever" had the same inode as ".".  It was then able to
determine the name of "." relative to ".." .   You then repeat the process
all the way up the tree till you find "/" .  Under that scheme you would
run the risk of statting /coda.

  However, according to strace, the pwd program does nothing of the sort.


connect(134520888, ptrace: umoven: Input/output error
{...}, 716889280)    = 23
fstat(1, {st_mode=0, st_size=0, ...})   = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2aabf000
write(1, "/incanta/homes19/thoth\n", 23/incanta/homes19/thoth
) = 23
munmap(0x2aabf000, 4096)                = 0

I have no idea what strace is interpreting as a connect call, but I suspect
that's what gets the thingy that mmap subsequently plays with.  I bet it's
doing a readlink on the /proc/self/cwd symlink


-- 
Bob Forsman                                   thoth_at_gainesville.fl.us
           http://www.gainesville.fl.us/~thoth/
Received on 2001-02-16 11:09:25