Pasi Kärkkäinen pasik@iki.fi wrote:
The ZFS code base is stable, the problem is the VFS interface in Linux and that applies to all filesystems....
Hello,
Care to explain what's the problem in Linux VFS layer ?
The VFS layer was introduced in 1980 by Bill Joy when he started the UFS project (his master thesis).
The VFS layer was enhanced around 1984/1985 to support NFS.
The VFS layer was enhanced again in 1987 to support mmap() and the new momory model from SunOS-4.0 that has been copied by all major OS.
In 1993, VFS was enhanced to support ACLs.
In 2007, VFS was enhanced to support CIFS (e.g. atomic create with ACL, switch into case insensitive mode, ...).
VFS has a 30 year history and offers a clean abstract design. It is even independent from typical changes in the proc or user structures. It uses vnodes instead of inodes to grant a clean abstraction level.
Linux VFS looks not very abstract, it is directly bound to user/proc structures and to Linux I/O. There is no support for NFS (get fid from vnode and get vnode from fid). There is no support for ACLs (let the filesystem decide whether access should be granted).
The deviating I/O model in Linux will cause a lot of work for adaptation....
What about extended attribute files (the superset of Win-DOS streams)?
Jörg