diff options
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_file.c')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_file.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/xfs/linux-2.6/xfs_file.c b/fs/xfs/linux-2.6/xfs_file.c index d8fb1b5d6cb5..257a56b127cf 100644 --- a/fs/xfs/linux-2.6/xfs_file.c +++ b/fs/xfs/linux-2.6/xfs_file.c | |||
@@ -100,10 +100,10 @@ xfs_iozero( | |||
100 | STATIC int | 100 | STATIC int |
101 | xfs_file_fsync( | 101 | xfs_file_fsync( |
102 | struct file *file, | 102 | struct file *file, |
103 | struct dentry *dentry, | ||
104 | int datasync) | 103 | int datasync) |
105 | { | 104 | { |
106 | struct xfs_inode *ip = XFS_I(dentry->d_inode); | 105 | struct inode *inode = file->f_mapping->host; |
106 | struct xfs_inode *ip = XFS_I(inode); | ||
107 | struct xfs_trans *tp; | 107 | struct xfs_trans *tp; |
108 | int error = 0; | 108 | int error = 0; |
109 | int log_flushed = 0; | 109 | int log_flushed = 0; |
@@ -140,8 +140,8 @@ xfs_file_fsync( | |||
140 | * might gets cleared when the inode gets written out via the AIL | 140 | * might gets cleared when the inode gets written out via the AIL |
141 | * or xfs_iflush_cluster. | 141 | * or xfs_iflush_cluster. |
142 | */ | 142 | */ |
143 | if (((dentry->d_inode->i_state & I_DIRTY_DATASYNC) || | 143 | if (((inode->i_state & I_DIRTY_DATASYNC) || |
144 | ((dentry->d_inode->i_state & I_DIRTY_SYNC) && !datasync)) && | 144 | ((inode->i_state & I_DIRTY_SYNC) && !datasync)) && |
145 | ip->i_update_core) { | 145 | ip->i_update_core) { |
146 | /* | 146 | /* |
147 | * Kick off a transaction to log the inode core to get the | 147 | * Kick off a transaction to log the inode core to get the |
@@ -868,7 +868,7 @@ write_retry: | |||
868 | mutex_lock(&inode->i_mutex); | 868 | mutex_lock(&inode->i_mutex); |
869 | xfs_ilock(ip, iolock); | 869 | xfs_ilock(ip, iolock); |
870 | 870 | ||
871 | error2 = -xfs_file_fsync(file, file->f_path.dentry, | 871 | error2 = -xfs_file_fsync(file, |
872 | (file->f_flags & __O_SYNC) ? 0 : 1); | 872 | (file->f_flags & __O_SYNC) ? 0 : 1); |
873 | if (!error) | 873 | if (!error) |
874 | error = error2; | 874 | error = error2; |