]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - fs/fs-writeback.c
vfs: Remove generic_osync_inode() and sync_page_range{_nolock}()
[karo-tx-linux.git] / fs / fs-writeback.c
index da86ef58e4278654b9ae721e73c0ce9815b19b40..628235cf44b59e311898a2766fdc45ea1b34ed70 100644 (file)
@@ -1242,57 +1242,3 @@ int sync_inode(struct inode *inode, struct writeback_control *wbc)
        return ret;
 }
 EXPORT_SYMBOL(sync_inode);
-
-/**
- * generic_osync_inode - flush all dirty data for a given inode to disk
- * @inode: inode to write
- * @mapping: the address_space that should be flushed
- * @what:  what to write and wait upon
- *
- * This can be called by file_write functions for files which have the
- * O_SYNC flag set, to flush dirty writes to disk.
- *
- * @what is a bitmask, specifying which part of the inode's data should be
- * written and waited upon.
- *
- *    OSYNC_DATA:     i_mapping's dirty data
- *    OSYNC_METADATA: the buffers at i_mapping->private_list
- *    OSYNC_INODE:    the inode itself
- */
-
-int generic_osync_inode(struct inode *inode, struct address_space *mapping, int what)
-{
-       int err = 0;
-       int need_write_inode_now = 0;
-       int err2;
-
-       if (what & OSYNC_DATA)
-               err = filemap_fdatawrite(mapping);
-       if (what & (OSYNC_METADATA|OSYNC_DATA)) {
-               err2 = sync_mapping_buffers(mapping);
-               if (!err)
-                       err = err2;
-       }
-       if (what & OSYNC_DATA) {
-               err2 = filemap_fdatawait(mapping);
-               if (!err)
-                       err = err2;
-       }
-
-       spin_lock(&inode_lock);
-       if ((inode->i_state & I_DIRTY) &&
-           ((what & OSYNC_INODE) || (inode->i_state & I_DIRTY_DATASYNC)))
-               need_write_inode_now = 1;
-       spin_unlock(&inode_lock);
-
-       if (need_write_inode_now) {
-               err2 = write_inode_now(inode, 1);
-               if (!err)
-                       err = err2;
-       }
-       else
-               inode_sync_wait(inode);
-
-       return err;
-}
-EXPORT_SYMBOL(generic_osync_inode);