Is 'transname' still alive ?
Hi all...
I was looking info about ClusterNFS, and I found some info on 'transname', ie, do the same as cNFS but on the kernel server.
Is that project still alive ? Is there any patch for 2.4 ?
TIA
Signature · 4 lines
J.A. Magallon \ Software is like sex: It's better when it's free mailto:[email protected] \ -- Linus Torvalds, FSF T-shirt Linux werewolf 2.4.19-rc1-jam1, Mandrake Linux 8.3 (Cooker) for i586 gcc (GCC) 3.1.1 (Mandrake Linux 8.3 3.1.1-0.7mdk)
Quoted 4 lines · J.A. Magallon
I was looking info about ClusterNFS, and I found some info on 'transname', ie, do the same as cNFS but on the kernel server.
Is that project still alive ? Is there any patch for 2.4 ?
The transname+omirr patch went in with kernel 2.1.43, but only a few identifiable scraps remain in recent kernels.
That patch was of major importance to the history of Linux. It is the reason why Linux has the dcache stuff, which lets us have multiple mount points, per-process namespaces, pathnames in /proc symlinks, and an efficient getcwd() system call. It made the 2.1.44 kernel horribly bad. It used to provide the POSIX-prohibited ability to do rmdir(".") safely.
You can see bits of the patch in the 2.4 kernel source:
--- fs/namei.c ---
/* [Feb-1997 T. Schoebel-Theuer]
* Fundamental changes in the pathname lookup mechanisms (namei)
* were necessary because of omirr. The reason is that omirr needs
* to know the _real_ pathname, not the user-supplied one, in case
* of symlinks (and also when transname replacements occur).
------------------
--- include/linux/dcache.h ---
/* appendix may either be NULL or be used for transname suffixes */ extern struct dentry * d_lookup(struct dentry *, struct qstr *);
------------------------------
--- Documentation/Configure.help ---
LocalWords: prio Micom xIO dwmw rimi OMIRR omirr omirrd unicode ntfs cmu NIC
------------------------------------
The actual transname stuff never made it into the kernel. We just have some of the support code. Prior to the patch, our filesystem code was like what BSD uses. Now we have something which is more like UnixWare, but likely better. I think Bill Hawes was responsible for this code after it got in.
You might be able to make up for the missing functionality with file-on-file mounts:
touch /tmp/mtab
mount --bind /tmp/mtab /etc/mtab
Quoted 2 lines · Albert D. Cahalan
It made the 2.1.44 kernel horribly bad. It used to provide the POSIX-prohibited ability to do
rmdir(".")safely.
"Safely" is not the word I'd use for something that allowed to subvert sticky bit on directories, to start with...
Hi,
we also using ClusterNFS but also experience several UNFSD bugs. So we have decided to try to reimplement transname into 2.4.18. Actually reading the 'translated' filename already works, but writing and other functions are still a problem.
So we are working on it, but since we don't have a lot of time, it might take a while until it is ready.
Btw, some help from people who are familiar with VFS is highly appreciated.
Bernd
PS: The CVS version from ClusterNFS has some problems with the CREATE-tag fixed (though for all files that have a create-tag but no client specific file, IO-errors appear; the fix for this is already ready since several months, but I had to experience another bug, that made this fix useless).
Bernd Schubert
Physikalisch Chemisches Institut
Abt. Theoretische Chemie
INF 229, 69120 Heidelberg
Tel.: 06221/54-5210
e-mail: bernd (dot) schubert (at) pci (dot) uni (minus) heidelberg (dot) de