[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
unionfs problem
From: |
Moritz Schulte |
Subject: |
unionfs problem |
Date: |
Wed, 27 Nov 2002 17:16:30 +0100 |
User-agent: |
Gnus/5.090008 (Oort Gnus v0.08) Emacs/21.2 (i686-pc-linux-gnu) |
Hi,
I have a problem with unionfs, maybe somebody can give me advice; it
is about symbolic links.
An example:
I use unionfs on /lib and in /lib there is libfnord.so, which is a
symbolic link to libfnord.so.42; now /lib/libfnord.so is looked up via
file_name_lookup_under.
Since the requested file libfnord.so is a link, ext2fs returns a
retry name of /lib/libfnord.so.42. glibc then triggers a `lookup
during a lookup'; the unionfs root node (lib) is locked during the
lookup of that retry name, which leads to a dead lock.
How can this problem be prevented?
One idea I had in mind is: unionfs would do O_NOFOLLOW lookups, read
the name a symbolic links point to and check wether that path is
beneath one of the underlying filesystems. If it is (like
`/lib/libfnord.so.42') , then we make a name out of it, which is
relative to the underlying file system (i.e.: cutting out that `/lib/'
part). But this ugly and doesn't have to work in all cases.
Any ideas?
Thanks,
moritz
--
moritz@duesseldorf.ccc.de - http://duesseldorf.ccc.de/~moritz/
GPG fingerprint = 3A14 3923 15BE FD57 FC06 B501 0841 2D7B 6F98 4199
- unionfs problem,
Moritz Schulte <=