Hi all,

I found a problem with VFS's namespace_rwlock (uspace/srv/vfs/vfs_ops.c). It prevents from creating overlayer filesystems like FUSE's fusexmp.c example [1][2]. Maybe even saving filesystem data in other filesystem is not possible.

VFS mount => overlayer FS mount => VFS stat on different FS file => deadlock

There is comment near the rwlock:
"This rwlock prevents the race between a triplet-to-VFS-node resolution and a concurrent VFS operation which modifies the file system namespace."

Is there another way how to prevent this race? Something like different lock for each mounted FS.

Zdenek

[1]http://bazaar.launchpad.net/~zdenek-bouska/helenos/fuse/view/head:/uspace/srv/fs/fusexmp/fusexmp.c
[2]fuse-2.9.0/example/fusexmp.c

_______________________________________________
HelenOS-devel mailing list
[email protected]
http://lists.modry.cz/cgi-bin/listinfo/helenos-devel

Reply via email to