Messages in this thread | | | Date | Fri, 21 Sep 2007 14:06:42 +0100 | From | Christoph Hellwig <> | Subject | Re: [patch 3/5] VFS: pass open file to ->xattr() |
| |
On Fri, Sep 21, 2007 at 03:00:06PM +0200, Miklos Szeredi wrote: > I don't think it's silly. Read/write get passed the file descriptor, > and it makes a lot of sense, if the filesystem has stateful opens. > > Similarly for any fs operation that gets a file descriptor, it makes > sense to pass the relevant open file down into the filesystem.
read/write fundamentally operate on file descriptors. None of these operations does, rather their normal forms get a path name and special forms operate on a file descriptor to avoid lookup races. Still the underlying operation has nothing to do with the file descriptor at all.
> If you look carefully, the ftrunacate() already does this, becuse > without that it's impossible to implement correct semantics in the > filesystem in some cases.
ftruncate is a special case due to O_TRUNC. But I have plans to solve this whole issue more elegant than the current hack.
> For other operations it's not impossible, but it would mean more hacks > in the filesystem itself (such as sillyrenaming) that are entirely > unneeded if the file info is available.
It's not a problem at all for filesystem that implement normal unix semantics. If you want to shoer-horn strange semantics that barely fit, you'll need some more hacks. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |