diff options
author | Christoph Hellwig <hch@lst.de> | 2010-03-05 09:21:21 +0100 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2010-03-05 13:25:10 -0500 |
commit | 26821ed40b4230259e770c9911180f38fcaa6f59 (patch) | |
tree | 40cd0fed705ec59dd3c909b96452bae1fc532796 /fs/afs/super.c | |
parent | 64ba9926759792cf7b95f823402e2781edd1b5d4 (diff) | |
download | linux-26821ed40b4230259e770c9911180f38fcaa6f59.tar.gz linux-26821ed40b4230259e770c9911180f38fcaa6f59.tar.bz2 linux-26821ed40b4230259e770c9911180f38fcaa6f59.zip |
make sure data is on disk before calling ->write_inode
Similar to the fsync issue fixed a while ago in commit
2daea67e966dc0c42067ebea015ddac6834cef88 we need to write for data to
actually hit the disk before writing out the metadata to guarantee
data integrity for filesystems that modify the inode in the data I/O
completion path. Currently XFS and NFS handle this manually, and AFS
has a write_inode method that does nothing but waiting for data, while
others are possibly missing out on this.
Fortunately this change has a lot less impact than the fsync change
as none of the write_inode methods starts data writeout of any form
by itself.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/afs/super.c')
-rw-r--r-- | fs/afs/super.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/fs/afs/super.c b/fs/afs/super.c index e1ea1c240b6a..14f6431598ad 100644 --- a/fs/afs/super.c +++ b/fs/afs/super.c @@ -48,7 +48,6 @@ struct file_system_type afs_fs_type = { static const struct super_operations afs_super_ops = { .statfs = afs_statfs, .alloc_inode = afs_alloc_inode, - .write_inode = afs_write_inode, .destroy_inode = afs_destroy_inode, .clear_inode = afs_clear_inode, .put_super = afs_put_super, |