Re: [RFC][PATCH 0/12]ext4: online defrag (ver 0.95)
From: Christoph Hellwig <hch@infradead.org>
Date: 2008-10-02 08:26:13
Also in:
linux-fsdevel
From: Christoph Hellwig <hch@infradead.org>
Date: 2008-10-02 08:26:13
Also in:
linux-fsdevel
On Thu, Oct 02, 2008 at 01:10:59AM -0700, Andreas Dilger wrote:
We've been using that patch for a long time now in Lustre, but will soon be replacing it with code that calls fh_to_dentry() and just craft fake fh to have the filesystem open the inode. That avoids all kinds of hacks in place internally. Definitely the __iopen__ directory should only be allowed for root...
Well, the right way to do it is to actually pass in the FH from userspace. Open by inode # alone is not enough, you alwasy want the generation, too. And for some filesystems (e.g. reiserfs) the FH is more complicated. The interface for it would be two ioctls (or better syscalls) to generate the FH and convert it back to an FD, and possibly a third one for readlink by handle. XFS had these since day 1, but I would neither recommend copying the API or implementation as they are just messed up badly.