Coda File System

Re: Coda requires concessions from the file system

From: Love <lha_at_stacken.kth.se>
Date: 17 Feb 2001 01:56:05 +0100
Robert Forsman <thoth_at_purplefrog.com> writes:

>   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.

This is the ``classical way'' of doing getcwd on unix (you forgot the extra
handing for (unix) mountpoints that is needed).

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

Hopefully it just uses the `getcwd()' libc call. And with modern glibc,
that resolves back to using the 'sys_getcwd()' syscall, that exists on a
linux kernel with dcache-entries. Sys_getcwd simply walk from leaf in the
dcache-entry (cwd) to the root collecting the names of each dcache-entry.

Love
Received on 2001-02-16 19:56:49