Messages in this thread | | | Date | Thu, 5 Jan 2012 12:42:05 +0100 | From | Jan Kara <> | Subject | Re: [PATCH] fs/ext{3,4}: fix potential race when setversion ioctl updates inode |
| |
On Thu 05-01-12 01:40:09, Djalal Harouni wrote: > On Thu, Jan 05, 2012 at 12:32:54AM +0100, Jan Kara wrote: > > > With the metadata checksum feature we were discussing using the inode > > > generation as part of the seed for the directory leaf block checksum, so > > > that it wasn't possible to incorrectly access stale directory blocks from > > > a previous incarnation of the same inode number. > > > > > > We were discussing just disabling this ioctl on filesystems with metadata > > > checksums, and printing a deprecation warning for filesystems without that > > > feature enabled. I'm not aware of any real-world use for this ioctl, since > > > NFS cannot use it to reconstruct handles because there's no API to allocate > > > an inode with a specific number, so setting the generation is pointless. > > OK, I didn't know this. I'm fine with deprecating the ioctl if it's > > useless but since that's going to take a while I think the cleanup still > > makes some sense. > Actually I've grepped this ioctl but did not found use cases, but as > ext{3,2} also support it, I did not say anything (this is old, there is > even the EXT4_IOC_SETVERSION_OLD ioctl ?). I don't know if this ioctl is > used or not. > > Only the reiserfs and ext{2,3,4} filesystems support this ioctl. The reiserfs > do not use mutexes at all, even in the REISERFS_IOC_SETFLAGS ioctl which will > test and set _all_ the possible values of the i_flags field. > Perhaps I should also send a patch for this ? Yes, possibly reiserfs should use i_mutex for that ioctl.
> And perhaps ext2 should also be updated. Sure. Send a patch my way when you have it.
Honza -- Jan Kara <jack@suse.cz> SUSE Labs, CR
| |