X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=fs%2Fsync.c;h=ba76b9623e7e809f6b3c5e6223020836069dc4ab;hb=3b89f56783a4ef796190ef1192c25e72e0b986b6;hp=c9f83f480ec55ec751d41021c73c9b3aa8c0b99a;hpb=2a88e7e559f2358f4e1422d0b0c0278a74136581;p=~andy%2Flinux diff --git a/fs/sync.c b/fs/sync.c index c9f83f480ec..ba76b9623e7 100644 --- a/fs/sync.c +++ b/fs/sync.c @@ -42,7 +42,7 @@ static int __sync_filesystem(struct super_block *sb, int wait) if (wait) sync_inodes_sb(sb); else - writeback_inodes_sb_locked(sb); + writeback_inodes_sb(sb); if (sb->s_op->sync_fs) sb->s_op->sync_fs(sb, wait); @@ -128,31 +128,6 @@ void emergency_sync(void) } } -/* - * Generic function to fsync a file. - */ -int file_fsync(struct file *filp, int datasync) -{ - struct inode *inode = filp->f_mapping->host; - struct super_block * sb; - int ret, err; - - /* sync the inode to buffers */ - ret = write_inode_now(inode, 0); - - /* sync the superblock to buffers */ - sb = inode->i_sb; - if (sb->s_dirt && sb->s_op->write_super) - sb->s_op->write_super(sb); - - /* .. finally sync the buffers to disk */ - err = sync_blockdev(sb->s_bdev); - if (!ret) - ret = err; - return ret; -} -EXPORT_SYMBOL(file_fsync); - /** * vfs_fsync_range - helper to sync a range of data & metadata to disk * @file: file to sync