[OpenAFS-devel] getcwd() on Linux 2.6.18+OpenAFS 1.4.2 bugs/errors.

Jim Rees rees@umich.edu
Thu, 8 Nov 2007 18:40:42 -0500


Michael Loftis wrote:

  No.  The problem is pwd (getcwd()) returns erroneous information.

You said /afs/mw/u/m/mloftis/var and /afs/modwest.com/u/j/jslife/var were
the same thing.  So if you cd to one, it's perfectly normal to "pwd" and get
the other path.

  when you chroot it returns paths *outside* the chroot.

It's not outside the chroot.  You've created a path that leads from the
chroot back to what you call the outside.  This is the behavior I expect.

It sounds like what you want is for the kernel to keep track not only of the
files and directories you have open, but the paths by which you got to them.
Not impossible, but I think it would require changes to the kernel outside
afs.  And it would change the semantics of the file system.

I'll admit that what you've seen can be surprising.  That's why most file
systems prohibit loops.  It would be nice if afs could do this but it would
be hard to implement.  And if we did, you would lose your /afs/mw shortcut.