diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2009-06-07 23:29:45 +0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2009-06-12 05:36:12 +0400 |
commit | 05459ca81ac3064cb040d983342bc453cccec458 (patch) | |
tree | 3f563253b1d980a24659fcf0967be3b57ec020c5 /fs/sysv/file.c | |
parent | 0d7916d7e985da52cdd2989c900485e17b035972 (diff) | |
download | linux-05459ca81ac3064cb040d983342bc453cccec458.tar.xz |
repair sysv_write_inode(), switch sysv to simple_fsync()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/sysv/file.c')
-rw-r--r-- | fs/sysv/file.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/fs/sysv/file.c b/fs/sysv/file.c index 589be21d884e..96340c01f4a7 100644 --- a/fs/sysv/file.c +++ b/fs/sysv/file.c @@ -26,7 +26,7 @@ const struct file_operations sysv_file_operations = { .write = do_sync_write, .aio_write = generic_file_aio_write, .mmap = generic_file_mmap, - .fsync = sysv_sync_file, + .fsync = simple_fsync, .splice_read = generic_file_splice_read, }; @@ -34,18 +34,3 @@ const struct inode_operations sysv_file_inode_operations = { .truncate = sysv_truncate, .getattr = sysv_getattr, }; - -int sysv_sync_file(struct file * file, struct dentry *dentry, int datasync) -{ - struct inode *inode = dentry->d_inode; - int err; - - err = sync_mapping_buffers(inode->i_mapping); - if (!(inode->i_state & I_DIRTY)) - return err; - if (datasync && !(inode->i_state & I_DIRTY_DATASYNC)) - return err; - - err |= sysv_sync_inode(inode); - return err ? -EIO : 0; -} |