Merge branch 'next-s3c' of git://aeryn.fluff.org.uk/bjdooks/linux into devel
[sfrench/cifs-2.6.git] / fs / sysv / file.c
index 0732ddb9020beddba8e0c8caf0a71a43ed3c7eb8..96340c01f4a7f4757aaaf62830c66b4a122cb134 100644 (file)
@@ -26,26 +26,11 @@ 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,
-       .sendfile       = generic_file_sendfile,
+       .fsync          = simple_fsync,
+       .splice_read    = generic_file_splice_read,
 };
 
 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;
-}