quoted
One task doing ptrace() can basically do whatever it wants with the
task being traced. This is not an exact analogy to what fuse does,
but close.
Well, IMO userland tasks should not have power to grab VFS mutexes for
indefinite ammount of time. ("fused is allowed to deadlock kernel, in
a way only write to special file helps" is ugly). Unfortunately, I
don't think there's a way to work around that deadlock within fuse
design limits... (coda was able to get around it by working on whole
files granularity, AFAICT), so we'll have to live with that.
That's just file I/O. You can easily deadlock coda with any other
file operation. In fact coda is _less_ robust wrt a misbehaving
userspace server than fuse by a big margin.
Miklos